

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# SageMaker スマートふるい Python SDK リファレンス
<a name="train-smart-sifting-pysdk-reference"></a>

このページでは、トレーニングスクリプトに SageMaker スマートふるいを適用するために必要な Python モジュールのリファレンスを提供します。

## SageMaker スマートふるい設定モジュール
<a name="train-smart-sifting-pysdk-base-config-modules"></a>

**`class smart_sifting.sift_config.sift_configs.RelativeProbabilisticSiftConfig()`**

SageMaker スマートふるい設定クラス。

**パラメータ**
+ `beta_value` (浮動小数点) – ベータ (定数) 値。損失値履歴の損失のパーセンタイルに基づいて、トレーニング用のサンプルを選択する確率を計算するために使用されます。ベータ値を下げると、ふるい分けられるデータの割合が低くなり、上げるとふるい分けられるデータの割合が高くなります。ベータ値には、正の値にすること以外は、最小値または最大値はありません。次のリファレンステーブルに、`beta_value` に関するふるい分け率の情報を示します。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/train-smart-sifting-pysdk-reference.html)
+ `loss_history_length` (int) – 相対的しきい値損失ベースのサンプリング用に保存する以前のトレーニング損失の数。
+ `loss_based_sift_config` (dict または `LossConfig` オブジェクト) – SageMaker スマートふるい損失インターフェイス設定を返す `LossConfig` オブジェクトを指定します。

**`class smart_sifting.sift_config.sift_configs.LossConfig()`**

`RelativeProbabilisticSiftConfig` クラスの `loss_based_sift_config` パラメータの設定クラス。

**パラメータ**
+ `sift_config` (dict または `SiftingBaseConfig` オブジェクト) – ふるい分けベース設定ディクショナリを返す `SiftingBaseConfig` オブジェクトを指定します。

**`class smart_sifting.sift_config.sift_configs.SiftingBaseConfig()`**

`LossConfig` クラスの `sift_config` パラメータの設定クラス。

**パラメータ**
+ `sift_delay` (int) – ふるい分けを開始する前に待機するトレーニングステップの数。モデル内のすべてのレイヤーがトレーニングデータを十分に把握した後、ふるい分けを開始することをお勧めします。デフォルト値は `1000` です。
+ `repeat_delay_per_epoch` (bool) – エポックごとにふるい分けを遅らせるかどうかを指定します。デフォルト値は `False` です。

## SageMaker スマートふるいデータバッチ変換モジュール
<a name="train-smart-sifting-pysdk-batch-transform-modules"></a>

`class smart_sifting.data_model.data_model_interface.SiftingBatchTransform`

バッチ変換の実行方法を定義する SageMaker スマートふるい Python モジュール。これを使用して、トレーニングデータのデータ形式を `SiftingBatch` 形式に変換するバッチ変換クラスを設定できます。SageMaker スマートふるいは、この形式のデータをふるい分け、ふるい分けバッチに蓄積できます。

`class smart_sifting.data_model.data_model_interface.SiftingBatch`

ふるい分けと蓄積が可能なバッチデータタイプを定義するインターフェイス。

`class smart_sifting.data_model.list_batch.ListBatch`

ふるい分け用のリストバッチを追跡するためのモジュール。

`class smart_sifting.data_model.tensor_batch.TensorBatch`

ふるい分け用のテンソルバッチを追跡するためのモジュール。

## SageMaker スマートふるい損失実装モジュール
<a name="train-smart-sifting-pysdk-loss-interface-moddule"></a>

`class smart_sifting.loss.abstract_sift_loss_module.Loss`

SageMaker スマートふるいインターフェイスを PyTorch ベースのモデルの損失関数に登録するためのラッパーモジュール。

## SageMaker スマートふるいデータローダーラッパーモジュール
<a name="train-smart-sifting-pysdk-dataloader-wrapper-module"></a>

`class smart_sifting.dataloader.sift_dataloader.SiftingDataloader`

SageMaker スマートふるいインターフェイスを PyTorch ベースのモデルのデータローダーに登録するためのラッパーモジュール。

Main Sifting Dataloader イテレータは、ふるい分け設定に基づいて、データローダーからトレーニングサンプルをふるい分けます。

**パラメータ**
+ `sift_config` (dict または `RelativeProbabilisticSiftConfig` オブジェクト) – `RelativeProbabilisticSiftConfig` オブジェクト。
+ `orig_dataloader` (PyTorch DataLoader オブジェクト) – ラップする PyTorch Dataloader オブジェクトを指定します。
+ `batch_transforms` (`SiftingBatchTransform` オブジェクト) – (オプション) データ形式が SageMaker スマートふるいライブラリのデフォルト変換でサポートされていない場合は、`SiftingBatchTransform` モジュールを使用してバッチ変換クラスを作成する必要があります。このパラメータは、バッチ変換クラスを渡すために使用されます。このクラスは、`SiftingDataloader` がデータを、SageMaker スマートふるいアルゴリズムが受け入れることができる形式に変換するために使用されます。
+ `model` (PyTorch モデルオブジェクト) – 元の PyTorch モデル
+ `loss_impl` (`smart_sifting.loss.abstract_sift_loss_module.Loss` のふるい損失関数) – `Loss` モジュールで設定され、PyTorch 損失関数をラップするふるい損失関数。
+ `log_batch_data` (bool) – バッチデータをログに記録するかどうかを指定します。`True` に設定すると、SageMaker スマートふるいは、保持またはふるい分けられたバッチの詳細を記録します。パイロットトレーニングジョブでのみ、オンにすることをお勧めします。ログ記録がオンになると、サンプルは GPU にロードされ、CPU に転送されるため、オーバーヘッドが発生します。デフォルト値は `False` です。