注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
モデル実験のPython APIは、実験にメトリクスとハイパーパラメータを書き込むための一連のメソッドを提供します。このページには、palantir_models.experimentsパッケージで利用可能な関数とクラスに関する情報が含まれています。
palantir_models.experiments.Experimentモデルトレーニング実験を追跡するためのクラス。実験は任意のModelOutputクラスから作成できます。
Copied!1model_output.create_experiment(name="experiment-name")
| 関数 | 説明 | 
|---|---|
log_param(key, value) | 単一のパラメータを実験に記録します。 | 
log_params(parameter_map) | 一連のパラメータを実験に記録します。 | 
log_metric(name, value, step) | 指定されたシリーズの下で実験にメトリック値を記録します。 | 
log_metrics(metric_values, step) | 指定されたシリーズの下で一連のメトリック値を実験に記録します。 | 
palantir_models.experiments.ErrorHandlerType実験コードを実行する際にエラーをどのように処理するかを制御するための列挙型。特に、メトリクスの書き込み時のネットワークエラーや実験サイズのオーバーフローなど、ユーザーコード以外によって引き起こされるエラーを管理します。
| バリアント | 説明 | 
|---|---|
ErrorHandlerType.FAIL | すべてのエラーで失敗します。エラーを呼び出し元に再発生させます。 | 
ErrorHandlerType.WARN | 最初のエラーで警告し、その後は抑制します。 | 
ErrorHandlerType.SUPPRESS | 何もログに記録しません。 | 
実験を作成する際に、希望するエラーハンドラータイプをModelOutput.create_experimentに渡すことができます。以下に例を示します:
Copied!1 2from palantir_models.experiments import ErrorHandlerType model_output.create_experiment(name="mnist-experiment", error_handler_type=ErrorHandlerType.WARN)
Experiment.log_parampalantir_models.experiments.Experiment.log_param(key: str, value: Union[bool, date, datetime, float, int, str])
valueを指定されたkeyにログします。Copied!1experiment.log_param(key="learning_rate", value=1e-3)
key: str
value: Union[bool, date, datetime, float, int, str]
Experiment.log_paramspalantir_models.experiments.Experiment.log_params(parameter_map: Dict[str, Union[bool, date, datetime, float, int, str]])
log_paramのバッチ版。Copied!1 2 3 4experiment.log_params(parameter_map={ "learning_rate": 1e-3, "model_type": "CNN" })
parameter_map: Dict[str, Union[bool, date, datetime, float, int, str]]
Experiment.log_metricpalantir_models.experiments.Experiment.log_metric(metric_name: str, metric_value: float, step: Optional[int] = None)
stepが提供されている場合、そのステップでログしようとします。ステップがすでにログされている場合、エラーが発生します。stepが提供されていない場合、シリーズの現在のステップは自動的に1ずつインクリメントされます。Copied!1 2experiment.log_metric(metric_name="train/loss", metric_value=1.5) experiment.log_metric(metric_name="train/loss", metric_value=0.9) # ステップは自動的にインクリメントされます
metric_name: str
metric_value: float
step: Optional[int]
Experiment.log_metricspalantir_models.experiments.Experiment.log_metrics(values: Dict[str, float], step: Optional[int] = None)
log_metricのバッチ版。stepが提供されている場合、そのステップでログしようとします。ステップがすでにどのシリーズでもログされている場合、エラーが発生します。stepが提供されていない場合、すべてのシリーズの現在のステップは独立して1ずつ自動インクリメントされます。Copied!1 2 3 4experiment.log_metrics(values={ "train/loss": 1.5, "train/acc": 0.7 })
values: Dict[str, float]
step: Optional[int]