ハイパーパラメータ調整の仕組み - Amazon SageMaker

ハイパーパラメータ調整の仕組み

深層学習ニューラルネットワークのような複雑な機械学習システムを構築するとき、可能なすべての組み合わせを探索することは実用的ではありません。ハイパーパラメータチューニングは、モデルのさまざまなバリエーションを試すことで生産性を向上させることができます。指定した範囲内の最も有望なハイパーパラメータ値の組み合わせに焦点を当てて、最適なモデルを自動的に探します。良い結果を得るためには、探索する正しい範囲を選択する必要があります。

注記

アルゴリズム自体が確率であるため、最適な値の組み合わせが選択範囲内に収まる場合でも、ハイパーパラメータの調整モデルは最善の答えへの収束に失敗する場合があります。

ランダム検索を使用する場合、ハイパーパラメータチューニングは、起動する各トレーニングジョブのハイパーパラメータに指定した範囲内の値のランダムな組み合わせを選択します。ハイパーパラメータ値の選択は以前のトレーニングジョブの結果に依存しないため、チューニングのパフォーマンスに影響を与えずに最大数のトレーニングジョブを同時に実行できます。

ランダム検索を使用するノートブックの例については、https://github.com/awslabs/amazon-sagemaker-examples/blob/master/hyperparameter_tuning/xgboost_random_log/hpo_xgboost_random_log.ipynb

ベイジアン最適化

ベイズ最適化は、ハイパーパラメーターのチューニングを退行問題。入力機能 (ハイパーパラメータ) のセットがある場合、ハイパーパラメータの調整は、選択されたメトリクスについてモデルを最適化します。回帰問題を解決するために、ハイパーパラメータの調整では、どのハイパーパラメータの組み合わせが最善の結果をもたらす可能性があるかについて推測し、これらの値をテストするためにトレーニングジョブを実行します。ハイパーパラメータ値のセットをテストした後、ハイパーパラメータチューニングは回帰を使用して次にテストするハイパーパラメータ値のセットを選択します。

ハイパーパラメータチューニングはAmazonを使う SageMaker ベイズ最適化の実装。

ハイパーパラメータの調整では、次のトレーニングジョブに最適なハイパーパラメータを選択する際に、この問題について現時点までに判明しているすべての点を考慮します。選択されるハイパーパラメータ値の組み合わせは、以前にパフォーマンスの漸進的な改善に最適なトレーニングジョブをもたらした組み合わせに近いものになる場合があります。これにより、ハイパーパラメータのチューニングでは、既知の結果のうち最善のものをエクスプロイトできます。また、これまで試されたものとは大きく異なるハイパーパラメータ値のセットが選択される場合もあります。これにより、ハイパーパラメータ値の範囲を調べて、まだよく理解されていない新しい領域を探すことができます。探索/エクスプロイトのトレードオフは、多くの機械学習で一般的な問題です。

ベイズ最適化の詳細については、以下を参照してください。

ハイパーバンド

Hyperband は、リソースを動的に再割り当てするマルチフィデリティベースのチューニング戦略です。Hyperband は、トレーニングジョブの中間結果と最終結果の両方を使用して、十分に活用されているハイパーパラメータ構成にエポックを再割り当てし、パフォーマンスが低いものを自動的に停止します。また、多くのparallel トレーニングジョブを使用するようにシームレスに拡張できます。これらの機能により、ランダム検索やベイズ最適化戦略におけるハイパーパラメーターのチューニングを大幅に高速化できます。

ハイパーバンドは、異なるリソースレベルで結果を公開する反復アルゴリズムを調整する場合にのみ使用してください。たとえば、Hyperband を使用すると、エポックごとに精度メトリクスを公開する画像分類用のニューラルネットワークを調整できます。

ハイパーバンドの詳細については、次のリンクを参照してください。

早期停止機能付きハイパーバンド

トレーニングジョブは、ハイパーパラメータチューニングジョブの目標メトリクスが改善される可能性が低い場合、早期停止できます。これにより、計算時間を短縮し、モデルの過適合を防ぐことができます。ハイパーバンドは、高度な内部メカニズムを使用してアーリーストップを適用します。したがって、パラメータはTrainingJobEarlyStoppingType()HyperParameterTuningJobConfigAPI をに設定する必要がありますOFFHyperband の内部早期停止機能を使用するとき。

注記

ハイパーパラメータ調整を行ってもモデルが改善されない場合もあります。これは、機械ソリューションを構築するための高度なツールであるため、科学的開発プロセスの一部と見なす必要があります。