MLflowを使用したモデル開発のトラッキング
この記事には、Databricks でのトラッキングモデル開発の例が含まれています。 機械学習モデルとディープラーニング モデルを自動的に記録してトラッキングするには、MLflow を使用するか、MLflow API を使用して手動で行います。
モデルトラッキングとMLflow
モデル開発プロセスは反復的であり、モデルの開発と最適化の際に作業をトラッキングするのは難しい場合があります。 Databricks では、 MLflowトラッキング を使用して、試したパラメーター設定や組み合わせ、モデルのパフォーマンスへの影響など、モデル開発プロセスをトラッキングできます。
MLflow トラッキングでは、 エクスペリメント と 実行 を使用して、機械学習とディープラーニングのモデル開発をログに記録し、追跡します。 実行は、モデル コードの 1 回の実行です。 MLflow の実行中に、パラメーターと結果を記録済みモデルを作成できます。 エクスペリメントは、関連する実行のコレクションです。 エクスペリメントでは、実行を比較およびフィルター処理して、モデルのパフォーマンスと、そのパフォーマンスがパラメーター設定や入力データなどにどのように依存するかを理解できます。
この記事のノートブックには、MLflow を使用してモデル開発をトラッキングするための簡単な例が示されています。 Databricks での MLflow トラッキングの使用の詳細については、「 機械学習のトラッキング」および「ディープラーニング トレーニングの実行」を参照してください。
注
MLflow トラッキングでは、ジョブ API の spark_submit_task を使用して送信されたジョブはサポートされていません。 代わりに、 MLflow プロジェクト を使用して Spark コードを実行できます。
自動ログ記録を使用してモデル開発を追跡する
MLflow では、多くの機械学習フレームワークやディープラーニング フレームワークで記述されたトレーニング コードを自動的にログに記録できます。 これは、MLflow トラッキングの使用を開始する最も簡単な方法です。
このノートブックの例は 、Scikit-Learnで自動ログを使用する方法を示しています。他の Python ライブラリでの自動ログ記録に関する情報については、「 トレーニングの実行を MLflow に自動的に記録する」を参照してください。
ログ API を使用してモデル開発をトラッキングする
このノートブックでは、MLflow ログ API の使用方法について説明します。 ロギング API を使用すると、ログに記録されるメトリクスをより細かく制御でき、テーブルやプロットなどの追加の成果物をログに記録できます。
このノートブックの例は、 Python ログ API の使用方法を示しています。 MLflow には REST、R、Java APIsもあります。