AutoML とは?

Databricks AutoML は、最適なアルゴリズムとハイパーパラメーター構成を自動的に見つけることで、データセットに機械学習を適用するプロセスを簡略化します。

データセットを指定し、機械学習の問題の種類を指定すると、AutoML によって次の処理が実行されます。

  1. データをクリーンアップして準備します
  2. 複数のアルゴリズム間で分散モデルのトレーニングとハイパーパラメーターの調整を実行します。
  3. scikit-learn、xgboost、LightGBM、Prophet、ARIMA のオープン ソース評価アルゴリズムを使用して、最適なモデルを検索します。
  4. 結果を表示します。 AutoML では、各試用版のソース コード ノートブックも生成されるため、必要に応じてコードを確認、再現、変更できます。

低コード UI または Python API を使用して AutoML の実験を開始します。

要件

  • Databricks Runtime 9.1 ML 以降 一般提供 (GA) バージョンの場合、Databricks Runtime 10.4 LTS ML 以降。
    • 時系列予測の場合は、Databricks Runtime 10.0 ML 以降を使用します。
    • Databricks Runtime 9.1 LTS ML 以降では、AutoML は databricks-automl-runtime パッケージに依存します。このパッケージには、AutoML の外部で役立つコンポーネントが含まれています。また、AutoML トレーニングによって生成されたノートブックを簡略化するのにも役立ちます。 databricks-automl-runtime は、PyPI で使用できます。
  • Databricks Runtime for Machine Learning にプレインストールされているライブラリ以外の追加ライブラリはクラスターにインストールしないようにする必要があります。
    • 既存のライブラリ バージョンに変更 (削除、アップグレード、またはダウングレード) を加えると、互換性がないことが原因で実行が失敗します。
  • AutoML は、共有アクセス モード クラスターと互換性がありません。
  • AutoML で Unity Catalog を使用するには、クラスター アクセス モード単一ユーザーであり、クラスターの指定された単一ユーザーである必要があります。
  • ワークスペースのファイルにアクセスするには、AutoML の実験用にネットワーク ポートの 1017 と 1021 を開いておく必要があります。 これらのポートを開くか、開いていることを確認するには、クラウド VPN ファイアウォールの構成とセキュリティ グループの規則を確認するか、ローカル クラウド管理者に問い合わせてください。 ワークスペースの構成とデプロイの詳細については、「ワークスペースの作成」を参照してください。

AutoML アルゴリズム

Databricks AutoML は、次の表のアルゴリズムに基づいてモデルをトレーニングおよび評価します。

Note

分類モデルと回帰モデルの場合、デシジョン ツリー、ランダム フォレスト、ロジスティック回帰、確率的勾配降下アルゴリズムを使用した線形回帰は、scikit-learn に基づいています。

分類モデル 回帰モデル 予測モデル
デシジョン ツリー デシジョン ツリー Prophet
ランダム フォレスト ランダム フォレスト Auto-ARIMA (Databricks Runtime 10.3 ML 以降で使用可能。)
ロジスティック回帰 確率的勾配降下法による線形回帰
XGBoost XGBoost
LightGBM LightGBM

試験ノートブックの生成

AutoML では、試用版の背後にあるソース コードのノートブックが生成されるため、必要に応じてコードを確認、再現、変更できます。

実験を予測する場合、AutoML で生成されたノートブックは、実験のすべての試験のためにワークスペースに自動的にインポートされます。

分類と回帰の実験の場合、データ探索のために AutoML で生成されたノートブックと一番良かった試験はワークスペースに自動的にインポートされます。 他の実験試験用に生成されたノートブックは、ワークスペースに自動インポートされるのではなく、DBFS 上の MLflow 成果物として保存されます。 一番良かった試験以外のすべての試験については、TrialInfo Python API の notebook_pathnotebook_url は設定されません。 このようなノートブックを使う必要がある場合、AutoML 実験 UI または databricks.automl.import_notebookPython API を使い、ワークスペースに手動でインポートできます。

AutoML によって生成されたデータ探索ノートブックか一番良かった試験のノートブックのみを使う場合、AutoML 実験 UI の [ソース] 列に、一番良かった実験で生成されたノートブックのリンクが含まれます。

AutoML 実験 UI で生成されたその他のノートブックを使う場合、ワークスペースに自動的にはインポートされません。 各 MLflow 実行をクリックするとノートブックが見つかります。 IPython ノートブックは、実行ページの Artifacts セクションに保存されます。 ワークスペース管理者が成果物のダウンロードを有効にしている場合、このノートブックをダウンロードしてワークスペースにインポートできます。

モデルの説明を容易にするための Shapley 値 (SHAP)

Note

MLR 11.1 以下では、データセットに datetime 列が含まれている場合、SHAP のプロットは生成されません。

AutoML 回帰と分類の実行によって生成されるノートブックには、Shapley 値を計算するコードが含まれます。 Shapley 値はゲーム理論に基づいており、モデルの予測に対する各特徴の重要性を推定します。

AutoML ノートブックでは、SHAP パッケージを使用して Shapley 値が計算されます。 これらの計算はメモリを大量に消費するため、既定では計算は実行されません。

Shapley 値を計算して表示するには、次のようにします。

  1. AutoML で生成された試用版ノートブックの [機能の重要度] セクションに移動します。
  2. shap_enabled = True を設定します。
  3. ノートブックを再実行します。

次のステップ