メインコンテンツまでスキップ

ハイパーパラメーターチューニング

Optuna、Ray Tune、HyperoptなどのPythonライブラリは、ハイパーパラメーターチューニングを簡略化および自動化して、機械学習モデルのハイパーパラメーターの最適なセットを効率的に見つけます。これらのライブラリは、複数のコンピュートにまたがって拡張できるため、最小限の手動オーケストレーションと構成要件でハイパーパラメーターをすばやく見つけることができます。

Optuna​

Optuna は、ハイパーパラメーターチューニングとモデル選択のための動的探索空間を簡単に定義できる軽量フレームワークです。 Optunaには、最新の最適化アルゴリズムと機械学習アルゴリズムがいくつか含まれています。

Optuna は Joblib と簡単に並列化してワークロードを拡張でき、 MLflow と統合してハイパーパラメータと メトリクス トライアル全体で。

Optunaの使用を開始するには、 Optunaを使用したハイパーパラメーターチューニングを参照してください。

Ray Tune​

Databricks Runtime ML には、並列コンピュート処理に使用されるオープンソースフレームワークであるRayが含まれています。 Ray Tune は、Ray に付属し、分散コンピューティングのバックエンドとして Ray を使用するハイパーパラメーターチューニング ライブラリです。

Databricks で Ray を実行する方法の詳細については、Databricks 上の Ray とはを参照してください。 Ray Tune の例については、 Ray Tune のドキュメントを参照してください。

Hyperopt​

注記

Hyperopt のオープンソース バージョンは保守されなくなりました。

16.4 LTS ML 以降の Databricks Runtime for Machine Learning には Hyperopt は含まれません。Databricks 、単一ノードの最適化にはOptuna を使用するか、非推奨のHyperopt分散ハイパーチューニング機能と同様のエクスペリエンスにはRayTune を使用することをお勧めします。 Databricks でのRayTuneの使用について詳しく学びます。

Hyperopt は、分散ハイパーパラメーターチューニングとモデル選択に使用されるPythonライブラリです。Hyperopt は、Apache Spark MLlib や Horovod などの分散 ML アルゴリズムと、scikit-learn や TensorFlow などの単一マシン ML モデルの両方で動作します。

Hyperopt の使用を開始するには、「 Hyperopt で分散トレーニング アルゴリズムを使用する」を参照してください。

MLlib の自動 MLflow 追跡​

注記

MLlibの自動MLflow追跡は非推奨であり、 Databricks Runtime 10.4 LTS ML以上を実行するクラスターでは デフォルト によって無効化されています。

代わりに、mlflow.pyspark.ml.autolog() を呼び出してMLflow PySpark ML自動ログ使用します。これは、 Databricks Autologgingで デフォルト によって有効になります。

MLlib自動MLflow追跡を使用すると、CrossValidator または TrainValidationSplit を使用するチューニング コードを実行すると、ハイパーパラメータと評価メトリクスがMLflowに自動的に記録されます。