AutoMLとは?
AutoML は、最適なアルゴリズムとハイパーパラメータ設定を自動的に見つけることで、データセットに機械学習を適用するプロセスを簡素化します。
AutoML はどのように機能しますか?
データセットを指定し、機械学習の問題の種類を指定すると、AutoML によって次の処理が行われます。
- データをクリーニングして準備します。
- 分散モデル トレーニングとハイパーパラメーターチューニングを複数のアルゴリズム間で調整します。
- scikit-learn、xgboost、LightGBM、Prophet、ARIMAのオープンソース評価アルゴリズムを使用して、最適なモデルを見つけます。
- 結果を表示します。 また、AutoML ではトライアルごとに ソースコードノートブックが生成され るため、必要に応じてコードを確認、再現、変更できます。
エクスペリメントの AutoML は、 回帰のためのローコードUIで開始します。 分類;または 予測、または Python API。
必要条件
-
Databricks では、AutoML の一般提供のために Databricks Runtime 10.4 LTS ML 以降をお勧めします。
-
AutoML は、AutoML の外部で役立つコンポーネントを含み、AutoML トレーニングによって生成されたノートブックを簡略化するのにも役立つ
databricks-automl-runtime
パッケージに依存しています。databricks-automl-runtime
は PyPI で入手できます。 -
Databricks Runtime for Machine Learning にプレインストールされているライブラリ以外の追加のライブラリをクラスターにインストールしないでください。
- 既存のライブラリのバージョンに変更を加えると(削除、アップグレード、ダウングレード)、互換性がないため、実行に失敗します。
-
ワークスペース内のファイルにアクセスするには、 AutoML エクスペリメント用にネットワークポート 1017 と 1021 が開いている必要があります。 これらのポートを開くか、開いていることを確認するには、クラウド VPN ファイアウォールの構成とセキュリティ グループ ルールを確認するか、ローカルのクラウド管理者に問い合わせてください。 ワークスペースの構成とデプロイの詳細については、「 ワークスペースの作成」を参照してください。
-
サポートされている コンピュート アクセス モードのコンピュート リソースを使用します。 すべてのコンピュートアクセスモードが Unity Catalogにアクセスできるわけではありません。
コンピュート アクセス モード | AutoML のサポート | Unity Catalogのサポート |
---|---|---|
専用 (以前のシングルユーザー) | サポート | サポート |
スタンダード (旧共有) | サポートされていません | サポート |
分離なし共有 | サポート | サポートされていません |
AutoML アルゴリズム
AutoML は、次の表のアルゴリズムに基づいてモデルをトレーニングおよび評価します。
分類モデルと回帰モデルの場合、決定木、ランダム フォレスト、ロジスティック回帰、および確率的勾配降下アルゴリズムによる線形回帰は、 scikit-learnに基づいています。
分類モデル | 回帰モデル | 予測モデル | Forecasting models (サーバレス) |
---|---|---|---|
Auto-ARIMA(Databricks Runtime 10.3 ML以降で使用可能) | |||
トライアルノートブックの生成
クラシック コンピュート AutoML は、試用版の背後にあるソース コードのノートブックを生成するため、必要に応じてコードを確認、再現、変更できます。
エクスペリメントを予測する場合、AutoML で生成されたノートブックは、エクスペリメントのすべての試用版のワークスペースに自動的にインポートされます。
分類と回帰のエクスペリメントの場合、データ探索用に AutoML で生成されたノートブックと、エクスペリメントの最適な試用版がワークスペースに自動的にインポートされます。 他のエクスペリメント試用版用に生成されたノートブックは MLflow ワークスペースに自動的にインポートされるのではなく、 DBFS にアーティファクトとして保存されます。 最適な試用版を除くすべての試用版では、TrialInfo
Python API のnotebook_path
とnotebook_url
は設定されません。これらのノートブックを使用する必要がある場合は、AutoMLエクスペリメントUIまたはdatabricks.automl.import_notebook
Python APIを使用して、手動でワークスペースにインポートできます。
AutoMLによって生成されたデータ探索ノートブックやベストトライアルのノートブックのみを使用する場合、AutoMLエクスペリメントUIの ソース 列には、ベストトライアル用に生成されたノートブックへのリンクが含まれます。
AutoML エクスペリメント UI で生成された他のノートブックを使用する場合、これらはワークスペースに自動的にインポートされません。ノートブックは、各 MLflow 実行をクリックすると見つけることができます。 IPython ノートブックは、実行ページの [アーティファクト ] セクションに保存されます。 このノートブックをダウンロードしてワークスペースにインポートできます (ワークスペースの管理者によってアーティファクトのダウンロードが有効になっている場合)。
モデルの説明可能性のためのShapley値(SHAP)
MLR 11.1 以下では、データセットに datetime
列が含まれている場合、SHAP プロットは生成されません。
AutoMLの回帰と分類の実行によって作成されたノートブックには、Shapley値を計算するコードが含まれています。Shapley値はゲーム理論に基づいており、モデルの予測に対する各特徴量の重要性を推定します。
AutoML ノートブックは、 SHAP パッケージを使用して Shapley 値を計算します。 これらの計算はメモリを大量に消費するため、デフォルトでは計算は実行されません。
Shapley値を計算して表示するには、以下を実行します。
- AutoML で生成された試用版ノートブックの [特徴の重要度 ] セクションに移動します。
shap_enabled = True
と設定します。- ノートブックを再実行します。