メインコンテンツへジャンプ
Engineering blog

MLOps を効果的に実施するためのフレームワークである MLFlow はあらゆる環境での機械学習を一元的に管理することが可能です。Databricks ではこの MLflow をマネージドサービスとして提供しており、Databricks 上での機械学習はもちろん、Databricks 環境以外での機械学習についても連携することが可能です。

この記事では、 Databricks の外部環境(ローカル PC 上など)からワークスペース内の MLflow を使用する方法について説明します。

以下のステップで実行していきます

  1. Databricks ワークスペースに MLflow の experiment を作成する
  2. Databricks 上の MLflow にアクセスするための情報確認
  3. 外部環境から MLflow のコードを実行する(run を実行する)
  4. Databricks 上の MLflow ページから run の結果を確認する

1.Databricks ワークスペースに MLflow の experiment を作成する

Databricks のワークスペース内に今回使用する MLflow の Experiment を作成します。 “Home” または “Workspace” アイコンから Notebook ディレクトリを開き、右クリックメニューから Create > MLflow Experiment で作成できます。

Databricks のワークスペース内に今回使用する MLflow の Experiment を作成します。 'Home' または 'Workspace' アイコンから Notebook ディレクトリを開き、右クリックメニューから Create > MLflow Experiment で作成できます。

作成された MLflow Experiment のページから Experiment ID を確認します。 この例では以下のとおりです。

  • Experiment ID: 275506464251973

作成された MLflow Experiment のページから Experiment ID を確認します。 この例では以下のとおりです。

2. Databricks 上の MLflow にアクセスするための情報確認

外部から Databricks 上の MLflow を参照するには以下の情報が必要になります。

  • ワークスペースの URL
    • ワークスペース URL はブラウザのアドレスバーから確認できます。
    • (例: https://ktmxxxxxxxxxxxxxxxx422.cloud.databricks.com/
  • User Access Token
    • ワークスペースの右上にある “User Settings” からトークンを発行してください。

3. 外部環境から MLflow のコードを実行する(run を実行する

外部環境(ローカル PC など)から MLflow を実行します。 ここでは、Linux 環境で実行する例を見ていきます。 MLflow をインストールし、アクセスするための環境変数を設定します。

$ pip install mlflow
### インストールされたversion確認
$ mlflow --version
mlflow, version 1.17.0

### 環境変数を設定
export MLFLOW_TRACKING_URI='databricks' <= 固定
export DATABRICKS_HOST='https://ktmxxxxxxxxxxxxxxxx422.cloud.databricks.com/'
export DATABRICKS_TOKEN='dapi632xxxxxxxxxxxxxxxxxxxxxxx' <=発行したToken

簡単な MLflow コードを実行します。
サンプル: mlflow_ctr.py

import mlflow

with mlflow.start_run(run_name='foobar123', experiment_id='275506464251973') as run:
mlflow.set_tag('team_label', 'teamA123')

実行します。

$ python mlflow_ctr.py

 

4. Databricks 上の MLflow ページから run の結果を確認する

再び Databricks 上の MLflow Experiment ページを参照します。 上記で実行した run の情報が登録されていることが確認できます。

再び Databricks 上の MLflow Experiment ページを参照します。 上記で実行した run の情報が登録されていることが確認できます。

参考

Databricks 無料トライアル
チュートリアル一覧へ