NTM モデルを調整する
自動モデル調整は、ハイパーパラメータ調整とも呼ばれ、データセットのさまざまなハイパーパラメータをテストする多数のジョブを実行して、モデルの最適なバージョンを見つけます。調整可能なハイパーパラメータ、それぞれの値の範囲、および目標メトリクスを選択します。アルゴリズムが計算するメトリクスから目標メトリクスを選択します。自動モデル調整は、選択されたハイパーパラメータを検索して、目標メトリクスを最適化するモデルになる値の組み合わせを見つけます。
Amazon SageMaker NTM は教師なし学習アルゴリズムで、ドキュメントのコーパスなど、大量の離散データのコレクションの潜在表現を学習します。潜在表現は、直接測定されていない推定変数を使用して、データセット内の観測値をモデル化します。NTM での自動モデル調整は、トレーニングまたは検証データの損失を最小限に抑えるモデルを見つけるのに役立ちます。トレーニング損失は、モデルがトレーニングデータにどの程度適合しているかを測定します。検証損失は、トレーニングされていないデータにどの程度モデルを一般化できるかを測定します。トレーニング損失が少ないということは、モデルがトレーニングデータに適していることを示します。検証の損失が少ないということは、モデルがトレーニングデータに過剰適合していないことを示しているため、モデルが正しくトレーニングされていないドキュメントをモデル化できます。通常望ましいのは、両方の損失を小さくすることです。ただし、トレーニング損失を最小限に抑えると、過剰適合が発生し、検証損失が増加する可能性があります。これにより、モデルの一般性が低下します。
モデル調整の詳細については、「SageMaker の自動モデルチューニング」を参照してください。
NTM アルゴリズムによって計算されたメトリクス
NTM アルゴリズムは、トレーニング中に計算された単一のメトリクス (validation:total_loss
) を報告します。総損失は、再構成損失とカルバック・ライブラー情報量の合計です。ハイパーパラメータ値を調整するときには、このメトリクスを目標として選択します。
メトリクス名 | [Description] (説明) | 最適化の方向 |
---|---|---|
validation:total_loss |
検証セットの総損失 |
最小化 |
調整可能な NTM ハイパーパラメータ
NTM アルゴリズムの以下のハイパーパラメータを調整できます。通常、mini_batch_size
を低く設定し、learning_rate
値を小さくすると、検証損失が少なくなりますが、トレーニングに時間がかかる可能性があります。検証損失が低い場合、必ずしも人間がより解釈しやすいトピックが生成されるわけではありません。トレーニングおよび検証の喪失に対する他のハイパーパラメータの影響は、データセットによって異なる可能性があります。互換性のある値を確認するには、NTM のハイパーパラメータ を参照してください。
Parameter Name | パラメータタイプ | 推奨範囲 |
---|---|---|
encoder_layers_activation |
CategoricalParameterRanges |
['sigmoid', 'tanh', 'relu'] |
learning_rate |
ContinuousParameterRange |
MinValue: 1e-4、MaxValue: 0.1 |
mini_batch_size |
IntegerParameterRanges |
MinValue: 16、MaxValue:2048 |
optimizer |
CategoricalParameterRanges |
['sgd', 'adam', 'adadelta'] |
rescale_gradient |
ContinuousParameterRange |
MinValue: 0.1、MaxValue: 1.0 |
weight_decay |
ContinuousParameterRange |
MinValue: 0.0、MaxValue: 1.0 |