Azure Databricks AutoML Python API を使用して ML モデルをトレーニングする

この記事では、AutoML Python API を使用して Azure Databricks AutoML でモデルをトレーニングする方法について説明します。 詳細については、「Azure Databricks AutoML Python API リファレンス」を参照してください。

この API には、AutoML で実行される分類、回帰、予測を開始する関数が用意されています。 各関数コールによって、一連のモデルがトレーニングされ、各モデルの試用版ノートブックが生成されます。

AutoML 実験の「要件」を参照してください。

AutoML API を使用して実験をセットアップする

次の手順では、API を使用して AutoML 実験を設定する一般的な方法について説明します。

  1. ノートブックを作成し、Databricks Runtime ML を実行しているクラスターにアタッチします。

  2. 既存のデータ ソースから使用するテーブルを特定するか、データ ファイルを DBFS にアップロードしてテーブルを作成します。

  3. AutoML の実行を開始するには、automl.regress() または automl.classify() 関数を使用し、他のトレーニング パラメーターと共にテーブルを渡します。 すべての関数とパラメーターを確認するには、「Azure Databricks AutoML Python API リファレンス」を参照してください。

    次に例を示します。

    summary = automl.regress(dataset=train_pdf, target_col="col_to_predict")
    
  4. AutoML の実行が始まると、コンソールに MLflow 実験の URL が表示されます。 この URL を使用して、実行の進行状況を監視します。 MLflow 実験を更新して、完了した試用版を確認します。

  5. AutoML の実行が完了した後、次の操作を実行できます。

  • [出力の概要] のリンクを使用して、MLflow 実験に移動するか、最適な結果の生成に使用されたノートブックに移動します。
  • データ探索ノートブックへのリンクを使用して、AutoML に渡されたデータに関する分析情報を取得します。 また、このノートブックを同じクラスターにアタッチし、それを再実行して結果を再現する、または追加のデータ分析を行えます。
  • AutoML コールから返された概要オブジェクトを使用して、試用版に関する詳細を確認したり、特定の試用版でトレーニングされたモデルを読み込んだりします。 詳細については、AutoMLSummary オブジェクトに関するセクションを参照してください。
  • 生成されたノートブックを試用版から複製し、同じクラスターにアタッチしてそれを再実行し、結果を再現します。 また、必要な編集を行い、再実行して追加のモデルをトレーニングし、同じ実験にそれらのログを記録できます。

ノートブックをインポートする

MLflow 成果物として保存されたノートブックをインポートするには、databricks.automl.import_notebook Python API を使います。 詳細については、「ノートブックをインポートする」を参照してください。

モデルを登録してデプロイする

AutoML トレーニング済みモデルは、MLflow モデル レジストリに登録されているモデルと同様に登録してデプロイできます。「MLflow モデルのログ、読み込み、登録、デプロイ」を参照してください。

pandas.core.indexes.numeric という名前のモジュールはありません

AutoML とモデル サービングを使用してビルドされたモデルを提供すると、エラー No module named 'pandas.core.indexes.numeric が表示されることがあります。

これは、AutoML とモデル サービングのエンドポイント環境との間の互換性のない pandas バージョンが原因です。 このエラーは、add-pandas-dependency.py スクリプトを実行することで解決できます。 このスクリプトは、ログに記録されたモデルの requirements.txtconda.yaml を編集して、適切な pandas 依存関係バージョン pandas==1.5.3 を含めます。

  1. スクリプトを変更して、モデルがログに記録された MLflow 実行の run_id を含めます。
  2. モデルを MLflow モデル レジストリに再登録します。
  3. MLflow モデルの新しいバージョンをサービングしてみてください。

Notebook の例

これらのノートブックを確認して、AutoML の使用を開始します。

次のノートブックでは、AutoML で分類を処理する方法を示しています。

AutoML 分類のノートブックの例

ノートブックを入手

次のノートブックでは、AutoML で回帰を処理する方法を示しています。

AutoML 回帰のノートブックの例

ノートブックを入手

次のノートブックでは、AutoML を使用して予測を実行する方法を示しています。

AutoML 予測のノートブックの例

ノートブックを入手

次のステップ

Azure Databricks AutoML Python API リファレンス