MLflow 実験を使用してトレーニング実行を整理する
実験は、モデル トレーニング実行の組織単位です。 実験には、ワークスペースとノートブックの 2 種類があります。
- ワークスペースの実験は、Databricks Mosaic AI UI または MLflow API から作成できます。 ワークスペースの実験はノートブックに関連付けられるのではなく、どのノートブックでも実験 ID または実験名を使用して、これらの実験への実行をログに記録できます。
- ノートブックの実験は、特定のノートブックに関連付けられています。 Azure Databricks では、mlflow.start_run() を使用して実行を開始するときにアクティブな実験がない場合は、ノートブックの実験が自動的に作成されます。
アクセス可能なワークスペース内のすべての実験を確認するには、サイドバーの [機械学習] > [実験] を選択します。
ワークスペースの実験を作成する
このセクションでは、 Azure Databricks UI を使用してワークスペースの実験を作成する方法について説明します。 ワークスペース実験は、ワークスペースまたは実験ページから直接作成できます。
MLflow API、または Databricks Terraform プロバイダーを databricks_mlflow_experiment で使用することもできます。
実行をワークスペースの実験にログ記録する手順については、「ノートブックのログ記録の例」を参照してください。
サイド バーで、 [ワークスペース] をクリックします。
実験を作成するフォルダーに移動します。
フォルダーを右クリックし、[作成] > [MLflow 実験] を選択します。
[MLflow 実験の作成] ダイアログで、実験の名前とオプションの成果物の場所を入力します。 成果物の場所を指定しない場合、成果物は MLflow で管理される成果物ストレージ (
dbfs:/databricks/mlflow-tracking/<experiment-id>
) に格納されます。Azure Databricks では、 Unity カタログ ボリューム、Azure Blob Storage、Azure Data Lake Storage の成果物の場所がサポートされます。
MLflow 2.15.0 以降では、成果物を Unity カタログ ボリュームに格納できます。 MLflow 実験を作成するときに、MLflow 実験成果物の場所として
dbfs:/Volumes/catalog_name/schema_name/volume_name/user/specified/path
形式のボリューム パスを指定します。成果物を Azure BLOB ストレージに格納するには、
wasbs://<container>@<storage-account>.blob.core.windows.net/<path>
形式の URI を指定します。 Azure BLOB ストレージに格納されている成果物は MLflow UI には表示されません。BLOB ストレージ クライアントを使用してダウンロードする必要があります。Note
成果物を DBFS 以外の場所に格納すると、成果物は MLflow UI に表示されません。 DBFS 以外の場所に格納されているモデルは、モデル レジストリに登録できません。
Create をクリックしてください。 空の実験が表示されます。
[実験] ページから新しいワークスペース実験を作成することもできます。 新しい実験を作成するには、 ドロップダウン メニューを使用します。 ドロップダウン メニューから、AutoML 実験または空の実験を選択できます。
AutoML 実験。 [AutoML 実験の構成] ページが表示されます。 AutoML の使用については、「モザイク AutoML UI を使用して ML モデルをトレーニングするを参照してください。
空の実験。 [MLflow 実験の作成] ダイアログが表示されます。 ダイアログに名前とオプションの成果物の場所を入力して、新しいワークスペース実験を作成します。 既定の成果物の場所は
dbfs:/databricks/mlflow-tracking/<experiment-id>
です。この実験に対する実行をログに記録するには、実験パスを指定して
mlflow.set_experiment()
を呼び出します。 実験パスは、実験ページの上部に表示されます。 詳細およびノートブックの例については、「ノートブックのログ記録の例」を参照してください。
ノートブックの実験を作成する
ノートブックで mlflow.start_run() コマンドを使用すると、実行によってメトリックとパラメーターがアクティブな実験にログ記録されます。 アクティブな実験がない場合、Azure Databricks ではノートブックの実験を作成します。 ノートブックの実験では、対応するノートブックと同じ名前と ID が共有されます。 ノートブック ID は、ノートブックの URL と ID の末尾にある数値の識別子です。
または、mlflow.set_experiment() 内の既存のノートブックに Azure Databricks ワークスペース パスを渡して、そのノートブックの実験を作成することもできます。
実行をノートブックの実験にログ記録する手順については、「ノートブックのログ記録の例」を参照してください。
Note
API (Python の MlflowClient.tracking.delete_experiment()
など) を使用してノートブックの実験を削除すると、ノートブック自体が [ごみ箱] フォルダーに移動されます。
実験を表示する
アクセスできる各実験が実験ページに表示されます。 このページから、任意の実験を表示できます。 実験名をクリックすると実験ページが表示されます。
[実験ページ] にアクセスするその他の方法には、次のものがあります。
- ワークスペース メニューからワークスペースの実験の [実験ページ] にアクセスできます。
- ノートブックからノートブックの実験の実験ページにアクセスできます。
実験を検索するには、[実験のフィルター] フィールドにテキストを入力し、Enter キーを押すか虫眼鏡アイコンをクリックします。 実験のリストが変更され、[名前]、[作成者]、[場所]、または [説明] 列の検索テキストを含む実験のみが表示されます。
テーブル内の実験の名前をクリックして、その実験ページを表示します。
実験ページに、実験に関連付けられているすべての実行が一覧表示されます。 テーブルから [実行名] をクリックして、実験に関連付けられている実行の実行ページを開きます。 [ソース] 列を使用すると、実行を作成したノートブックのバージョンにアクセスできます。 メトリックまたはパラメーター設定で実行を検索およびフィルター処理することもできます。
ワークスペースの実験を表示する
- サイド バーで、 [ワークスペース] をクリックします。
- 実験が格納されているフォルダーに移動します。
- 実験名をクリックします。
ノートブックの実験を表示する
ノートブックの右側のサイドバーにある [実験] アイコン をクリックします。
[実験の実行] サイドバーが表示され、ノートブックの実験に関連付けられている各実行の概要 (実行パラメーターやメトリックなど) が表示されます。 サイドバーの上部には、最近ログに記録されたノートブックが実行される実験の名前があります (ノートブックの実験またはワークスペースの実験)。
サイドバーから、実験ページ、または直接、実行に移動できます。
- 実験を表示するには、右端 ([実験の実行] の横) にある をクリックします。
- 実行を表示するには、実行の名前をクリックします。
実験を管理する
実験ページ、実験ページ、またはワークスペース メニューから、自身が所有者である実験の名前を変更したり、削除したり、アクセス許可を管理したりできます。
Note
Databricks Git フォルダーのノートブックによって作成された MLflow 実験に対するアクセス許可の名前変更、削除、または管理を直接行うことはできません。 これらのアクションは、Git フォルダー レベルで実行する必要があります。
実験ページまたは実験ページから実験の名前を変更する
重要
この機能はパブリック プレビュー段階にあります。
実験ページまたは実験ページから実験の名前を変更するには、 をクリックし、[名前の変更] を選択します。
ワークスペース メニューから実験の名前を変更する
- サイド バーで、 [ワークスペース] をクリックします。
- 実験が格納されているフォルダーに移動します。
- 実験名を右クリックし、[名前の変更] を選択します。
実験名をコピーする
実験名をコピーするには、実験ページの上部にある をクリックします。 MLflow コマンド set_experiment
でこの名前を使用して、アクティブな MLflow 実験を設定できます。
ノートブックの実験サイドバーから実験名をコピーすることもできます。
ノートブックの実験を削除する
ノートブックの実験はノートブックの一部であり、個別に削除することはできません。 ノートブックを削除すると、関連付けられているノートブックの実験が削除されます。 UI を使用してノートブックの実験を削除すると、ノートブックも削除されます。
API を使用してノートブックの実験を削除するには、ワークスペース API を使用して、ノートブックと実験の両方がワークスペースから削除されるようにします。
ワークスペース メニューからワークスペースの実験を削除する
- サイド バーで、 [ワークスペース] をクリックします。
- 実験が格納されているフォルダーに移動します。
- 実験名を右クリックし、[ゴミ箱に移動] を選択します。
実験ページまたは実験ページからワークスペースの実験またはノートブックの実験を削除する
重要
この機能はパブリック プレビュー段階にあります。
実験ページまたは実験ページから実験を削除するには、 をクリックし、[削除] を選択します。
ノートブックの実験を削除すると、ノートブックも削除されます。
実験のアクセス許可を変更する
実験ページから実験のアクセス許可を変更するには、[共有] をクリックします。
自分が所有する実験のアクセス許可は、実験ページから変更できます。 [アクション] 列の をクリックし、[アクセス許可] を選択します。
実験のアクセス許可レベルの詳細については、「MLflow 実験 ACL」を参照してください。
ワークスペース間で実験をコピーする
ワークスペース間で MLflow 実験を移行するために、コミュニティ主導のオープンソース プロジェクト MLflow Export-Import を使用できます。
これらのツールを使用すると、次のことができます。
- 同じまたは別の追跡サーバー内の他のデータ サイエンティストと共有および共同作業を行う。 たとえば、別のユーザーの実験を自分のワークスペースに複製できます。
- ローカル追跡サーバーから Databricks ワークスペースに MLflow の実験と実行をコピーする。
- ミッション クリティカルな実験とモデルを別の Databricks ワークスペースにバックアップする。