AutoML Python API を使用して回帰モデルをトレーニングする
この記事では、AutoML Python API を使用して AutoML を使用してモデルをトレーニングする方法について説明します。 詳細については、「 AutoML Python API リファレンス を参照してください。
この API には、AutoML で実行される分類、回帰、予測を開始する関数が用意されています。 各関数コールによって、一連のモデルがトレーニングされ、各モデルの試用版ノートブックが生成されます。
AutoML 実験の「要件」を参照してください。
AutoML API を使用して実験をセットアップする
次の手順では、API を使用して AutoML 実験を設定する一般的な方法について説明します。
ノートブックを作成し、Databricks Runtime ML を実行しているクラスターにアタッチします。
既存のデータ ソースから使用するテーブルを特定するか、データ ファイルを DBFS にアップロードしてテーブルを作成します。
AutoML の実行を開始するには、
automl.regress()
、automl.classify()
、またはautoml.forecast()
関数を使用し、他のトレーニング パラメーターと共にテーブルを渡します。 すべての関数とパラメーターについては、 AutoML Python API リファレンスを参照してください。Note
automl.forecast()
関数は、クラシック コンピューティングでのforecasting でのみ使用できます。次に例を示します。
# Regression example summary = automl.regress(dataset=train_pdf, target_col="col_to_predict") # Classification example summary = automl.classification(dataset=train_pdf, target_col="col_to_predict") # Forecasting example summary = automl.forecast(dataset=train_pdf, target_col="col_to_predic", time_col="date_col", horizon=horizon, frequency="d", output_database="default")
AutoML の実行が始まると、コンソールに MLflow 実験の URL が表示されます。 この URL を使用して、実行の進行状況を監視します。 MLflow 実験を更新して、完了した試用版を確認します。
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.txt
とconda.yaml
を編集して、適切なpandas
依存関係バージョンpandas==1.5.3
を含めます。 - スクリプトを変更して、モデルがログに記録された MLflow 実行の
run_id
を含めます。 - モデルを MLflow モデル レジストリに再登録します。
- MLflow モデルの新しいバージョンをサービングしてみてください。
ノートブックの例
次のノートブックでは、AutoML で回帰を処理する方法を示しています。