Databricks Runtime for Machine Learning | Databricks on AWS [2021/9/30時点]の翻訳です。
Databricksクイックスタートガイドのコンテンツです。
Databricks機械学習ランタイム(Databricks Runtime ML)は、機械学習に最適化されたクラスターの作成を自動化します。Databricks Runtime MLクラスターには、TensorFlow、PyTorch、Keras、XGBoostのような最も人気のある機械学習ライブラリや、Horovodのような分散トレーニングに必要なライブラリが含まれています。Databricks機械学習ランタイムは、クラスターの作成スピードを改善し、互換性のあるライブラリがインストールされることを保証します。
Databricksにおける機械学習とディープラーニングの利用方法に関しては、Databricks機械学習ガイドを参照ください。
Databricks機械学習ランタイムそれぞれのバージョンに関しては、リリースノートを参照ください。
Databricks機械学習ランタイムは、Databricksランタイムをベースとしています。例えば、Databricks機械学習ランタイム 7.3 LTSは、Databricksランタイム7.3 LTSをベースとしています。ベースのDatabricksランタイムに含まれるライブラリの一覧はリリースノートにあります。
警告!
HIPAAコンプライアンスが必要な場合には、HIPAA-compliant deploymentをご覧ください。
Databricks機械学習ランタイムのご紹介
このチュートリアルは、Databricks機械学習ランタイムを使い始める方向けに設計されています。表形式データをロードし、モデルをトレーニングし、分散ハイパーパラメーターチューニングを行い、モデルによる推論までをウォークスルーするのに10分程度必要とします。また、MLflow APIとMLflowモデルレジストリの使い方も説明します。
Databricksチュートリアルノートブック
Databricks機械学習ランタイムに含まれるライブラリ
Databricks機械学習ランタイムには、人気のMLライブラリが含まれています。これらのライブラリは、それぞれのリリースで新機能、バグフィックスを取り込むようにアップデートされます。
Databricksトップ階層のライブラリとしてサポートするライブラリのサブセットを規定しています。これらのライブラリに関しては、Databricksは短い周期でアップデートを行い、(依存関係の競合が起きないように)それぞれのランタイムリリースで最新のパッケージが含まれるようにしています。Databricksでは、これらトップ階層のライブラリに対するアドバンスドなサポート、テスト、最適化を行っています。
トップ階層、その他のライブラリの完全なリストについては、それぞれのランタイムのドキュメントを参照ください。
- 原文を参照ください。
Databricks機械学習ランタイムの使い方
インストール済みのライブラリに加え、Databricks機械学習ランタイムは、クラスターの設定、そして、どのようにPythonパッケージを管理するのかと言う点で、従来のDatabricksランタイムと異なります。
Databricks機械学習ランタイムを用いたクラスターの作成
クラスターを作成する際、Databricks Runtime Versionのドロップダウンから、Databricks Runtime MLのバージョンを選択します。CPUおよびGPUの機械学習ランタイムを選択することができます。
GPUが有効化されたMLランタイムを選択した際、互換性のあるDriver TypeとWorker Typeを選択するように指示が表示されます。互換性のないインスタンスタイプはドロップダウンでグレーになります。GPUが有効化されているインスタンスタイプは、GPU-Acceleratedラベルの下に表示されます。
警告!
自動で全てのクラスターにインストールされるワークスペース上のライブラリは、Databricks機械学習ランタイムと競合する可能性があります。Databricks機械学習ランタイムを用いてクラスターを作成する前に、競合するライブラリのInstall automatically on all clustersのチェックボックスを解除してください。
Pythonパッケージの管理
Databricksランタイム 9.0ML以降では、Pythonパッケージをインストールするのにvirtualenvパッケージマネージャが使用されます。全てのPythonパッケージは単一の環境/databricks/python3
にインストールされます。
Databricksランタイム 8.4ML以前では、PythonパッケージのインストールにCondaパッケージマネージャが使用されています。全てのPythonパッケージは、Python 2を使用したクラスターの場合には単一の環境/databricks/python2
、Python 3を使用したクラスターの場合には単一の環境/databricks/python3
にインストールされます。Conda環境のスイッチ(アクティベート)はサポートされていません。
Pythonライブラリの管理に関しては、ライブラリを参照ください。
機械学習の自動化のサポート
Databricks機械学習ランタイムには、モデル開発プロセスを自動化し、ベストのパフォーマンスを示すモデルを効率的に探し出す支援をするためのツールが含まれています。
- AutoMLを用いることで、一連のモデルの作成、チューニング、評価を自動化し、それぞれのランをレビュー、再現、コード修正できるように対応するソースコードを含むPythonノートブックを作成します。
- マネージドMLflowは、実験的なランの追跡、モデルのデプロイ、シェア、集中管理されたモデルレジストリの管理を提供することで、エンドツーエンドのモデルのライフサイクルを管理します。
-
SparkTrials
クラスで拡張されたHyperoptを用いることで、MLモデルのパラメーターチューニングを自動化かつ分散処理できるようになります。