Databricks での AI と Machine Learning

この記事では、Azure Databricks に用意されている、AI および ML ワークフローの構築と監視に役立つツールについて説明します。 この図は、これらのコンポーネントがどのように連携して、モデルの開発とデプロイのプロセスを実装するのに役立つかを示しています。

Machine learning diagram: Model development and deployment on Databricks

機械学習とディープ ラーニングに Databricks を使用する理由

Azure Databricks を使用すると、ML パイプライン全体を通したエンドツーエンドのガバナンスによって、完全な ML ライフサイクルを 1 つのプラットフォームに実装できます。 Azure Databricks には、ML ワークフローをサポートするための以下の組み込みツールが含まれています。

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 TransformersLangChain などのライブラリが含まれています。 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 configtrue に設定されたクラスターではサポートされていません。

Databricks Runtime ML を使用してクラスターを作成する

クラスターを作成する場合は、[Databricks Runtime バージョン] ドロップダウンから [Databricks Runtime ML バージョン] を選択します。 CPU および GPU 対応の ML ランタイムの両方を使用できます。

Select Databricks Runtime ML

ノートブックのドロップダウン メニューからクラスターを選択すると、クラスター名の右側に Databricks Runtime のバージョンが表示されます。

View Databricks Runtime ML version

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 の主な機能については、次を参照してください。