次の方法で共有


Azure Machine Learning 内に Azure Databricks と AutoML を含む開発環境をセットアップする

重要

この記事では、Azure Machine Learning SDK v1 の使用に関する情報を提供します。 SDK v1 は 2025 年 3 月 31 日の時点で非推奨となり、サポートは 2026 年 6 月 30 日に終了します。 SDK v1 は、その日付までインストールして使用できます。

2026 年 6 月 30 日より前に SDK v2 に移行することをお勧めします。 SDK v2 の詳細については、「 Azure Machine Learning Python SDK v2SDK v2 リファレンスとは」を参照してください。

Azure Databricks と自動 ML を使用する開発環境を Azure Machine Learning 内に構成する方法について説明します。

Azure Databricks は、Azure クラウド内のスケーラブルな Apache Spark プラットフォームで大規模な集中型機械学習ワークフローを実行する場合に最適です。 これは、CPU または GPU ベースのコンピューティング リソースにより、コラボレーションに適した Notebook ベースの環境を提供するものです。

その他の機械学習開発環境については、Python 開発環境のセットアップに関するページを参照してください。

前提条件

Azure Machine Learning ワークスペース。 作成するには、ワークスペース リソースの作成に関する記事の手順に従います。

Azure Machine Learning と AutoML を使用する Azure Databricks

Azure Databricks は、Azure Machine Learning と、その AutoML 機能と統合されています。

Azure Databricks は、以下のように使用できます。

  • Spark MLlib を使用してモデルをトレーニングし、そのモデルを ACI/AKS にデプロイするため。
  • Azure Machine Learning SDK を使用して自動機械学習機能と一緒に。
  • Azure Machine Learning パイプラインからのコンピューティング先として。

Databricks コンピューティングを設定する

Databricks コンピューティング リソースを作成します。 一部の設定は、Databricks に自動化された機械学習用の SDK をインストールする場合にのみ適用されます。

コンピューティング リソースの作成には数分かかります。

次の設定を使用します。

設定 適用対象
コンピューティング名 常時 あなたのコンピュータ名
Databricks Runtime のバージョン 常時 9.1 LTS
Python バージョン 常時 3
worker の種類
(同時実行反復処理の最大数を決定)
自動化された ML
のみ
メモリ最適化 VM 優先
ワーカー 常時 2 以上
自動スケールの有効化 自動化された ML
のみ
オフ

コンピューティングが実行中になるまで待機してから、次に進んでください。

Azure Machine Learning SDK を Databricks に追加する

コンピューティングが実行中になったら、ライブラリを作成して、適切な Azure Machine Learning SDK パッケージをコンピューティングにアタッチします。

自動 ML を使用するには、AutoML を含む Azure Machine Learning SDK の追加に関するセクションに進んでください。

  1. ライブラリを保存する現在のワークスペース フォルダーを右クリックします。 [作成]>[ライブラリ] の順に選択します。

    ヒント

    前のバージョンの SDK を使用している場合は、コンピューティングのインストール済みライブラリでその選択を解除し、ごみ箱に移動します。 新しいバージョンの SDK をインストールし、コンピューティングを再起動します。 再起動後に問題が起きた場合は、コンピューティングをデタッチし、再度アタッチします。

  2. 次のオプションを選択します (他の SDK のインストールはサポートされていません)

    SDK パッケージ extras ソース PyPi 名
    Databricks 用 Python Egg または PyPI のアップロード azureml-sdk[databricks]

    警告

    他の SDK extras はインストールできません。 [databricks] オプションのみを選択します。

    • [すべてのコンピューティングに自動的にアタッチする] は選択しないでください。
    • コンピューティング名の横にある [アタッチ] を選択します。
  3. 状態が [アタッチ済み] に変わるまで、エラーを監視します。これには数分かかる場合があります。 このステップが失敗した場合は、次の操作を行います。

    次の方法で、コンピューティングを再起動してみてください。

    1. 左側のウィンドウで、[コンピューティング] を選択します。
    2. テーブル内で、コンピューティング名を選択します。
    3. [ライブラリ] タブで [再起動] を選択します。

    正常にインストールされると、状態列の下に [インストール済み] が表示されます。

AutoML を含む Azure Machine Learning SDK を Databricks に追加する

コンピューティングが Databricks Runtime 7.3 LTS (ML "以外") で作成された場合は、ノートブックの最初のセルで次のコマンドを実行して、Azure Machine Learning SDK をインストールします。

%pip install --upgrade --force-reinstall -r https://aka.ms/automl_linux_requirements.txt

AutoML 構成の設定

AutoML 構成では、Azure Databricks を使用するときに次のパラメーターを追加してください。

  • max_concurrent_iterations は、コンピューティング内のワーカー ノードの数に基づきます。
  • spark_context=sc は、既定の Spark コンテキストに基づきます。

Azure Databricks と連携動作する ML ノートブック

実際に試してみましょう。

  • サンプル ノートブックがたくさんありますが、Azure Databricks で動作するのはこれらのサンプル ノートブックのみです。

  • 次のサンプルを、ワークスペースから直接インポートします。

    1. ワークスペース内でフォルダーを右クリックし、[インポート] を選択します。
    2. URL を指定するか、サポートされている外部形式を含むか、Databricks ワークスペースからエクスポートされたノートブックの ZIP アーカイブを含むファイルを参照します。
    3. インポート を選択します。
  • トレーニング コンピューティングとして Databricks を使用してパイプラインを作成する方法を確認します。

トラブルシューティング

  • Databricks で自動機械学習の実行を取り消す: Azure Databricks で自動機械学習の機能を使用しいる場合で、実行をキャンセルし新たに実験の実行を開始するには、Azure Databricks コンピューティングを再起動します。

  • >: 自動化された機械学習の設定で、繰り返し回数が 10 回を超えている場合は、実行を送信するときに show_output に設定します。

  • Azure Machine Learning SDK 用の Databricks ウィジェットと自動化された機械学習:Azure Machine Learning SDK ウィジェットは、Databricks ノートブックではサポートされていません。この理由は、ノートブックが HTML ウィジェットを解析できないからです。 Azure Databricks のノートブック セルで次の Python コードを使用することにより、portal でウィジェットを表示することができます。

    displayHTML("<a href={} target='_blank'>Azure Portal: {}</a>".format(local_run.get_portal_url(), local_run.id))
    
  • パッケージをインストールする際の失敗

    追加のパッケージがインストールされていると、Azure Databricks で Azure Machine Learning SDK のインストールが失敗します。 psutil のようなパッケージでは、競合が発生することがあります。 インストール エラーを回避するには、ライブラリ バージョンを止めてパッケージをインストールします。 この問題は Databricks に関連したもので、Azure Machine Learning SDK には関連はありません。 他のライブラリでもこの問題が発生する場合があります。 例:

    psutil cryptography==1.5 pyopenssl==16.0.0 ipython==2.2.0
    

    別の方法として、Python ライブラリでインストールの問題が発生し続けている場合は、初期化スクリプトを使用することができます。 この方法は、公式にはサポートされていません。 詳細については、「Cluster-scoped init scripts」を参照してください。

  • pandas._libs.tslibs から名前 をインポートできません:自動機械学習を使用するときにこのエラーが表示される場合は、notebook で次の 2 行を実行します。

    %sh rm -rf /databricks/python/lib/python3.7/site-packages/pandas-0.23.4.dist-info /databricks/python/lib/python3.7/site-packages/pandas
    %sh /databricks/python/bin/pip install pandas==0.23.4
    
  • インポート エラー:'pandas.core.indexes' という名前のモジュールはありません:自動化された機械学習を使用しているときにこのエラーが表示される場合は、以下を実行します。

    1. 次のコマンドを実行して、Azure Databricks コンピューティングに 2 つのパッケージをインストールします。

      scikit-learn==0.19.1
      pandas==0.22.0
      
    2. ノートブックでコンピューティングをデタッチした後で再アタッチします。

    これらの手順で問題が解決しない場合は、コンピューティングを再起動してみてください。

  • FailToSendFeather: Azure Databricks のコンピューティング上のデータの読み取り時に FailToSendFeather エラーが表示される場合は、次の解決策を参照してください。

    • azureml-sdk[automl] パッケージを最新バージョンにアップグレードします。
    • azureml-dataprep バージョン 1.1.8 以降を追加します。
    • pyarrow バージョン 0.11 以降を追加します。

次のステップ