AutoML Python API を使用して回帰モデルをトレーニングする
この記事では、AutoML Python API を使用して AutoML でモデルをトレーニングする方法を示します。 詳細については、 AutoML Python API リファレンス をご覧ください。
この API には、分類、回帰、および予測の AutoML 実行を開始する関数が用意されています。 各関数呼び出しは、一連のモデルをトレーニングし、モデルごとに試用版ノートブックを生成します。
「 AutoMLエクスペリメント の要件 」を参照してください。
AutoML APIを使用してエクスペリメントを設定する
次の手順では、通常、AutoML を使用して エクスペリメントを設定する方法について説明します。API
-
ノートブックを作成し 、実行中のクラスター Databricks Runtime MLにアタッチします。
-
既存のデータソースから使用するテーブルを特定するか 、データファイルをアップロードして DBFS してテーブルを作成します。
-
AutoML の実行を開始するには、
automl.regress()
、automl.classify()
、またはautoml.forecast()
関数を使用し、テーブルと他のトレーニング パラメーターを渡します。 すべての関数とパラメーターを表示するには、 AutoML Python API リファレンスを参照してください。
automl.forecast()
機能は、クラシックコンピュートでの予測にのみ使用できます。
例えば:
# 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 を使用して回帰を行う方法を示しています。