Databricks での AI と Machine Learning
この記事では、Azure Databricks に用意されている、AI および ML ワークフローの構築と監視に役立つツールについて説明します。 この図は、これらのコンポーネントがどのように連携して、モデルの開発とデプロイのプロセスを実装するのに役立つかを示しています。
機械学習とディープ ラーニングに Databricks を使用する理由
Azure Databricks を使用すると、ML パイプライン全体を通したエンドツーエンドのガバナンスによって、完全な ML ライフサイクルを 1 つのプラットフォームに実装できます。 Azure Databricks には、ML ワークフローをサポートするための以下の組み込みツールが含まれています。
- データ、機能、モデル、関数を対象にした、ガバナンス、検出、バージョン管理、アクセス制御のための Unity Catalog。
- データ監視のためのレイクハウス監視。
- 特徴エンジニアリングとサービス提供。
- モデルのライフサイクルのサポート:
- 自動モデル トレーニング用の Databricks AutoML。
- モデル開発追跡用の MLflow。
- モデル管理用の Unity Catalog。
- 高可用性、低遅延のモデル提供のための Databricks Model Serving。 これには、次を使用した LLM のデプロイが含まれます。
- Foundation Model API。サービス エンドポイントから最新のオープン モデルにアクセスしてクエリを実行できます。
- 外部モデル。Databricks の外部でホストされているモデルにアクセスできます。
- モデル予測の質と誤差を追跡するためのレイクハウス監視。
- 自動化されたワークフローと運用環境に対応した ETL パイプライン用の Databricks ワークフロー。
- コード管理と Git 統合のための Databricks Repos。
Databricks でのディープ ラーニング
ディープ ラーニング アプリケーションのインフラストラクチャを構成することは容易でない場合があります。
Databricks Runtime for Machine Learning は、TensorFlow、PyTorch、Keras などの最も一般的なディープ ラーニング ライブラリの互換性のあるバージョンが組み込まれたクラスターと、Petastorm、Hyperopt、Horovod などのサポート ライブラリを使用して、これを処理します。 Databricks Runtime ML クラスターには、ドライバーとサポート ライブラリを含む、事前に構成された GPU サポートも組み込まれています。 また、ML ワークフローや AI アプリケーションをスケーリングするための計算処理を並列化する Ray のようなライブラリもサポートしています。
Databricks Runtime ML クラスターには、ドライバーとサポート ライブラリを含む、事前に構成された GPU サポートも組み込まれています。 Databricks Model Serving を使用すると、追加の構成なしでディープ ラーニング モデル用のスケーラブルな GPU エンドポイントを作成できます。
機械学習アプリケーションの場合、Databricks では、Databricks Runtime for Machine Learning を実行するクラスターを使用することをお勧めします。 「Databricks Runtime ML を使用してクラスターを作成する」を参照してください。
Databricks でディープ ラーニングを開始するには、以下を参照してください。
Databricks での大規模言語モデル (LLM) と生成 AI
Databricks Runtime for Machine Learning には、既存の事前トレーニング済みモデルやその他のオープンソース ライブラリをワークフローに統合できる、Hugging Face Transformers や LangChain などのライブラリが含まれています。 Databricks MLflow 統合により、トランスフォーマー パイプライン、モデル、処理コンポーネントで MLflow 追跡サービスを簡単に使用できます。 さらに、John Snow Labs などのパートナーの OpenAI モデルまたはソリューションを Azure Databricks ワークフローに統合することもできます。
Azure Databricks を使用すると、特定のタスクのデータに対して LLM をカスタマイズできます。 Hugging Face や DeepSpeed などのオープンソース ツールをサポートすることで、基盤 LLM を効率的に取得し、独自のデータでトレーニングして、特定のドメインとワークロードに対する精度を高めることができます。 その後、生成 AI アプリケーションでカスタム LLM を活用できます。
さらに、Databricks には Foundation Model API と外部モデルが用意されており、サービス エンドポイントから最先端のオープン モデルにアクセスしてクエリを実行できます。 Foundation Model API を使うと、開発者は独自のモデル デプロイを維持することなく、高品質の生成 AI モデルを利用するアプリケーションを迅速かつ簡単に構築できます。
SQL ユーザー向けに、Databricks により、SQL データ アナリストがデータ パイプラインとワークフロー内で直接、OpenAI を含む LLM モデルにアクセスするために使用できる AI 関数が提供されます。 「Azure Databricks の AI 関数」を参照してください。
Databricks Runtime for Machine Learning
Databricks Runtime for Machine Learning (Databricks Runtime ML) により、事前に構築された機械学習、ディープ ラーニング インフラストラクチャ (最も一般的な ML および DL ライブラリを含む) を使用してクラスターの作成が自動化されます。 Databricks Runtime ML の各バージョンのライブラリの完全な一覧については、リリース ノートを参照してください。
機械学習ワークフロー用の Unity Catalog のデータにアクセスするには、クラスターの [アクセス モード] を単一ユーザー (割り当て済み) にする必要があります。 共有クラスターは、Databricks Runtime for Machine Learning に対応していません。 さらに、Databricks Runtime ML は、TableACLs クラスターまたは spark.databricks.pyspark.enableProcessIsolation config
が true
に設定されたクラスターではサポートされていません。
Databricks Runtime ML を使用してクラスターを作成する
クラスターを作成する場合は、[Databricks Runtime バージョン] ドロップダウンから [Databricks Runtime ML バージョン] を選択します。 CPU および GPU 対応の ML ランタイムの両方を使用できます。
ノートブックのドロップダウン メニューからクラスターを選択すると、クラスター名の右側に Databricks Runtime のバージョンが表示されます。
GPU 対応の ML ランタイムを選択した場合は、互換性のあるドライバーの種類とワーカー タイプを選択するように求められます。 互換性のないインスタンスの種類は、ドロップダウン メニューで淡色表示されます。 GPU 対応のインスタンスの種類は、[GPU 加速化] ラベルの下に一覧表示されます。
Note
機械学習ワークフロー用の Unity Catalog のデータにアクセスするには、クラスターの [アクセス モード] を単一ユーザー (割り当て済み) にする必要があります。 共有クラスターは、Databricks Runtime for Machine Learning に対応していません。
Databricks Runtime ML に含まれているライブラリ
Databricks Runtime ML には、さまざまな一般的な ML ライブラリが含まれています。 ライブラリは各リリースで更新され、新しい機能と修正プログラムが追加されました。
Databricks は、サポートされているライブラリのサブセットを最上位層ライブラリに指定しました。 これらのライブラリでは、Databricks の更新頻度が高速化し、ランタイム リリースごとに最新のパッケージ リリースに更新されます (依存関係の競合がない場合)。 Databricks では、最上位層ライブラリに対して高度なサポート、テスト、埋め込みの最適化も行われます。
最上位層と提供されているその他のライブラリの完全な一覧については、Databricks Runtime ML のリリース ノートを参照してください。
次のステップ
作業を開始するには、次のトピックをご覧ください。
Databricks Machine Learning の推奨 MLOps ワークフローについては、次を参照してください。
Databricks Machine Learning の主な機能については、次を参照してください。