次の方法で共有


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

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

  • ワークスペースの実験は、Databricks Mosaic AI 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 実験の作成] ダイアログで、実験の名前とオプションの成果物の場所を入力します。 成果物の場所を指定しない場合、成果物は 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 形式のボリューム パスを指定します。

    EXP_NAME = "/Users/first.last@databricks.com/my_experiment_name"
    CATALOG = "my_catalog"
    SCHEMA = "my_schema"
    VOLUME = "my_volume"
    ARTIFACT_PATH = f"dbfs:/Volumes/{CATALOG}/{SCHEMA}/{VOLUME}"
    
    mlflow.set_tracking_uri("databricks")
    mlflow.set_registry_uri("databricks-uc")
    
    if mlflow.get_experiment_by_name(EXP_NAME) is None:
        mlflow.create_experiment(name=EXP_NAME, artifact_location=ARTIFACT_PATH)
    mlflow.set_experiment(EXP_NAME)
    

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

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

  5. Create をクリックしてください。 新しい実験の実験の詳細ページが表示されます。

  6. この実験に対する実行をログに記録するには、実験パスを指定して mlflow.set_experiment() を呼び出します。 実験パスを表示するには、実験名の右側にある情報アイコン 情報アイコン をクリックします。 詳細とノートブックの例については、実験に対する実行とモデルのログ記録を参照してください。

[実験] ページから実験を作成する

基本モデルの微調整、AutoML、またはカスタム実験を作成するには、[ 実験 ] をクリックするか、左側のサイドバーで [新しい > 実験 ] を選択します。

ページの上部で、次のいずれかのオプションを選択して実験を構成します。

ノートブックの実験を作成する

ノートブックで mlflow.start_run() コマンドを使用すると、実行によってメトリックとパラメーターがアクティブな実験にログ記録されます。 アクティブな実験がない場合、Azure Databricks ではノートブックの実験を作成します。 ノートブックの実験では、対応するノートブックと同じ名前と ID が共有されます。 ノートブック ID は、ノートブックの URL と ID の末尾にある数値の識別子です。

専用のグループ アクセス権を持つコンピューティングで MLflow を実行しているユーザーは、ノートブックが存在するディレクトリに書き込むためのアクセス許可がグループに付与されていることを確認するか、mlflow.set_tracking_uri("<path>")を使用して書き込む MLflow のフォルダーを指定する必要があります。

または、mlflow.set_experiment() 内の既存のノートブックに Azure Databricks ワークスペース パスを渡して、そのノートブックの実験を作成することもできます。

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

API (Python の MlflowClient.tracking.delete_experiment() など) を使用してノートブックの実験を削除すると、ノートブック自体が [ごみ箱] フォルダーに移動されます。

実験を表示する

アクセスできる各実験が実験ページに表示されます。 このページから、任意の実験を表示できます。 実験名をクリックすると、実験の詳細ページが表示されます。

実験の詳細ページにアクセスするその他の方法:

  • ワークスペースの実験の実験の詳細ページには、ワークスペース メニューからアクセスできます。
  • ノートブックからノートブック実験の実験の詳細ページにアクセスできます。

実験を検索するには、[実験のフィルター] フィールドにテキストを入力し、Enter キーを押すか虫眼鏡アイコンをクリックします。 実験のリストが変更され、[名前][作成者][場所]、または [説明] 列の検索テキストを含む実験のみが表示されます。

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

実験を表示する

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

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

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

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

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

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

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

サイドバーから、実験の詳細ページに移動するか、直接実行に移動できます。

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

実験を管理する

実験ページ、実験の 詳細ページ、またはワークスペース メニューから、所有する実験の名前の変更、削除、またはアクセス許可の管理を行うことができます。

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

実験の名前を変更する

所有する実験の名前は、[ 実験 ] ページ またはその実験の実験の詳細ページから変更できます。

  • [ 実験 ] ページで、Kebab メニューの [Kebab] メニュー アイコン をクリックします。右端の列で [ 名前の変更] をクリックします。

[実験] ページから名前を変更します。

  • 実験の詳細ページで、Kebab メニューの Kebab メニュー アイコン をクリックします。[ アクセス許可 ] の横にある [ 名前の変更] をクリックします。

実験の詳細ページから名前を変更します。

ワークスペースの実験の名前をワークスペースから変更できます。 実験名を右クリックし、[名前の 変更] をクリックします。

実験 ID と実験へのパスを取得する

実験の詳細ページで、実験名の右側にある情報アイコン 情報アイコン をクリックして、ノートブックの実験へのパスを取得できます。 実験へのパス、実験 ID、成果物の場所を示すポップアップ ノートが表示されます。 MLflow コマンド set_experiment の実験 ID を使用して、アクティブな MLflow 実験を設定できます。

実験名のアイコン

ノートブックから、[ パス] アイコン をクリックして、実験の完全なパスをコピーできます。ノートブックの実験サイドバーで。

ノートブックサイドバーの実験パスアイコン。

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

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

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

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

所有している実験は、実験 ページまたは実験の詳細ページ から削除できます。

重要

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

  • [ 実験 ] ページで、Kebab メニューの Kebab メニュー アイコン をクリックします。右端の列で 、[ 削除] をクリックします。

実験ページから削除します。

  • 実験の詳細ページで、Kebab メニューの Kebab メニュー アイコン をクリックします。[ アクセス許可 ] の横にある [ 削除] をクリックします。

実験の詳細ページから削除します。

ワークスペースの実験をワークスペースから削除できます。 実験名を右クリックし、[ ごみ箱に移動] をクリックします。

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

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

実験の詳細ページのアクセス許可メニュー

所有する実験のアクセス許可は、[ 実験 ] ページから変更できます。 Kebab メニューの Kebab メニュー アイコン をクリックします。右端の列で、[ アクセス許可] をクリックします。

[実験] ページからアクセス許可を変更します。

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

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

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

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

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