MLflow 実験を使用してトレーニング実行を整理する

実験は、モデル トレーニング実行の組織単位です。 実験には、ワークスペースとノートブックの 2 種類があります。

  • ワークスペースの実験は、Databricks Machine Learning UI または MLflow API から作成できます。 ワークスペースの実験はノートブックに関連付けられるのではなく、どのノートブックでも実験 ID または実験名を使用して、これらの実験への実行をログに記録できます。
  • ノートブックの実験は、特定のノートブックに関連付けられています。 Azure Databricks では、mlflow.start_run() を使用して実行を開始するときにアクティブな実験がない場合は、ノートブックの実験が自動的に作成されます。

アクセス可能なワークスペース内のすべての実験を確認するには、サイドバーの [機械学習] > [実験] を選択します。

実験ページ

ワークスペースの実験を作成する

このセクションでは、 Azure Databricks UI を使用してワークスペースの実験を作成する方法について説明します。 ワークスペース実験は、ワークスペースまたは実験ページから直接作成できます。

MLflow API、または Databricks Terraform プロバイダーdatabricks_mlflow_experiment で使用することもできます。

実行をワークスペースの実験にログ記録する手順については、「ノートブックのログ記録の例」を参照してください。

  1. サイドバーで、ワークスペース アイコン[ワークスペース] をクリックします。

  2. 実験を作成するフォルダーに移動します。

  3. フォルダーを右クリックし、[作成] > [MLflow 実験] を選択します。

  4. [MLflow 実験の作成] ダイアログで、実験の名前とオプションの成果物の場所を入力します。 成果物の場所を指定しない場合、成果物は dbfs:/databricks/mlflow-tracking/<experiment-id> に格納されます。

    Azure Databricks では DBFS と Azure BLOB ストレージの成果物の場所がサポートされます。

    成果物を Azure BLOB ストレージに格納するには、wasbs://<container>@<storage-account>.blob.core.windows.net/<path> 形式の URI を指定します。 Azure BLOB ストレージに格納されている成果物は MLflow UI には表示されません。BLOB ストレージ クライアントを使用してダウンロードする必要があります。

    Note

    成果物を DBFS 以外の場所に格納すると、成果物は MLflow UI に表示されません。 DBFS 以外の場所に格納されているモデルは、モデル レジストリに登録できません。

  5. Create をクリックしてください。 空の実験が表示されます。

[実験] ページから新しいワークスペース実験を作成することもできます。 新しい実験を作成するには、[実験の作成] ドロップダウン ドロップダウン メニューを使用します。 ドロップダウン メニューから、AutoML 実験または空の実験を選択できます。

  • AutoML 実験。 [AutoML 実験の構成] ページが表示されます。 AutoML の使用の詳細については、「Azure Databricks 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 キーを押すか虫眼鏡アイコンをクリックします。 実験のリストが変更され、[名前][作成者][場所]、または [説明] 列の検索テキストを含む実験のみが表示されます。

テーブル内の実験の名前をクリックして、その実験ページを表示します。

実験を表示する

実験ページに、実験に関連付けられているすべての実行が一覧表示されます。 テーブルから [実行名] をクリックして、実験に関連付けられている実行の実行ページを開きます。 [ソース] 列を使用すると、実行を作成したノートブックのバージョンにアクセスできます。 メトリックまたはパラメーター設定で実行を検索およびフィルター処理することもできます。

ワークスペースの実験を表示する

  1. サイドバーで、ワークスペース アイコン[ワークスペース] をクリックします。
  2. 実験が格納されているフォルダーに移動します。
  3. 実験名をクリックします。

ノートブックの実験を表示する

ノートブックの右側のサイドバーにある [実験] アイコン 実験アイコン をクリックします。

[実験の実行] サイドバーが表示され、ノートブックの実験に関連付けられている各実行の概要 (実行パラメーターやメトリックなど) が表示されます。 サイドバーの上部には、最近ログに記録されたノートブックが実行される実験の名前があります (ノートブックの実験またはワークスペースの実験)。

実行パラメーターとメトリックを表示する

サイドバーから、実験ページ、または直接、実行に移動できます。

  • 実験を表示するには、右端 ([実験の実行] の横) にある [外部リンク] をクリックします。
  • 実行を表示するには、実行の名前をクリックします。

実験を管理する

実験ページ、実験ページ、またはワークスペース メニューから、自身がオーナーである実験の名前を変更したり、削除したり、アクセス許可を管理したりできます。

Note

Databricks Git フォルダーのノートブックによって作成された MLflow 実験に対するアクセス許可の名前変更、削除、または管理を直接行うことはできません。 これらのアクションは、Git フォルダー レベルで実行する必要があります。

実験ページまたは実験ページから実験の名前を変更する

重要

この機能はパブリック プレビュー段階にあります。

実験ページまたは実験ページから実験の名前を変更するには、ボタン 3 つのアイコン をクリックし、[名前の変更] を選択します。

ワークスペース メニューから実験の名前を変更する

  1. サイドバーで、ワークスペース アイコン[ワークスペース] をクリックします。
  2. 実験が格納されているフォルダーに移動します。
  3. 実験名を右クリックし、[名前の変更] を選択します。

実験名をコピーする

実験名をコピーするには、実験ページの上部にある [コピー アイコン] をクリックします。 MLflow コマンド set_experiment でこの名前を使用して、アクティブな MLflow 実験を設定できます。

実験名のアイコン

ノートブックの実験サイドバーから実験名をコピーすることもできます。

ノートブックの実験を削除する

ノートブックの実験はノートブックの一部であり、個別に削除することはできません。 ノートブックを削除すると、関連付けられているノートブックの実験が削除されます。 UI を使用してノートブックの実験を削除すると、ノートブックも削除されます。

API を使用してノートブックの実験を削除するには、ワークスペース API を使用して、ノートブックと実験の両方がワークスペースから削除されるようにします。

ワークスペース メニューからワークスペースの実験を削除する

  1. サイドバーで、ワークスペース アイコン[ワークスペース] をクリックします。
  2. 実験が格納されているフォルダーに移動します。
  3. 実験名を右クリックし、[ゴミ箱に移動] を選択します。

実験ページまたは実験ページからワークスペースの実験またはノートブックの実験を削除する

重要

この機能はパブリック プレビュー段階にあります。

実験ページまたは実験ページから実験を削除するには、ボタン 3 つのアイコン をクリックし、[削除] を選択します。

ノートブックの実験を削除すると、ノートブックも削除されます。

実験のアクセス許可を変更する

実験ページから実験のアクセス許可を変更するには、[共有] をクリックします。

実験ページの [アクセス許可] ボタン

自分が所有する実験のアクセス許可は、実験ページから変更できます。 [アクション] 列の 3 点リーダーのアイコン をクリックし、[アクセス許可] を選択します。

実験のアクセス許可レベルの詳細については、「MLFlow 実験 ACL」を参照してください。

ワークスペース間で実験をコピーする

ワークスペース間で MLflow 実験を移行するために、コミュニティ主導のオープンソース プロジェクト MLflow Export-Import を使用できます。

これらのツールを使用すると、次のことができます。

  • 同じまたは別の追跡サーバー内の他のデータ サイエンティストと共有および共同作業を行う。 たとえば、別のユーザーの実験を自分のワークスペースに複製できます。
  • ローカル追跡サーバーから Databricks ワークスペースに MLflow の実験と実行をコピーする。
  • ミッション クリティカルな実験とモデルを別の Databricks ワークスペースにバックアップする。