Lakehouse AIでプロダクションMLOpsをシンプルに

[Simplifying Production MLOps with Lakehouse AI \| Databricks Blog](https://www.databricks.com/blog/simplifying-production-mlops-with-lakehouse-ai)の翻訳です。

:::note warn
本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
:::

機械学習(ML)とは単にモデルを開発するというものではありません。それらを現実世界、すなわちプロダクションのシステムへの取り込みに関することです。しかし、プロトタイプからプロダクションに移行することは簡単ではありません。通常、モデルやデータの複雑性を理解し、様々なシステムと繋ぎ合わせ、Kubernetesのようなツールをマスターする必要があります。DataOps、ModelOps、DevOpsを一つの統合されたワークフローに統合することは、多くの場合「MLOps」と呼ばれます。

Databricksにおいては、皆様の企業に効果的にMLOpsのプラクティスを導入するには、統合され、データ中心のAIプラットフォームが必要であると信じています。本日、容易かつ大規模にMLOpsシステムをデプロイ、維持するために皆様のチームが必要とするすべてを提供するDatabricksレイクハウスAIプラットフォームにおけるいくつかの機能を発表できることを嬉しく思っています。

> 「MLとMLOpsでDatabricksを活用することで、Comexはモデルのトレーニングからプロダクションのデプロイメントに容易かつクイックに移行できるようになりました。MLOpsスタックは、我々のチームにおけるMLワークフローを自動化、標準化し、より多くのプロジェクトに取り組むことができ、迅速に市場に投入できるようになりました。」— Daniel Natanael García Zapata -Global Data Science at Cemex

# データ & AIに対する統合ソリューション

MLOpsのライフサイクルは、定常的にデータを消費し、データを生成しますが、多くのMLプラットフォームは、データとAIに対してサイロ化されたツールを提供しています。DatabricksのUnity Catalog(UC)は点をつなぎ、今では[モデル](https://docs.databricks.com/ja/mlflow/models-in-uc.html)と[特徴量エンジニアリング](https://docs.databricks.com/ja/machine-learning/feature-store/uc/ui-uc.html)のサポートを正式提供しています。MLライフサイクルを通じてチームがシームレスに作業できるように、一つの集中管理された場所で、チームは特徴量、モデル、データ資産を発見、管理、制御することができます。このような洞察を把握することが難しい場合があるため、だからこそ我々はこの統合された世界でいくつかの機能を提供しています:

## ガバナンス

- **ワークスペース横断のガバナンス(正式提供):** MLOpsに関して最もいただいたリクエストは、プロダクションの特徴量とデータを、開発環境で利用できるようにするということでした。今ではすべてがUCにあるので、権限を制御する単一の場所が存在しています: チームはモデル、特徴量、トレーニングデータに対するワークスペースの読み込み/書き込みアクセスを許可することができます。これによって、開発、プロダクションのインフラストラクチャの分離を維持しつつも、ワークスペース横断の共有とコラボレーションを実現することができます。
- **エンドツーエンドのリネージ(パブリックプレビュー):** データとAIを共存させることで、チームは全体のMLライフサイクルのエンドツーエンドのリネージを手に入れることができます。プロダクションのMLモデルに歪みが生じた場合には、インパクトを理解し、根本原因分析を行うためにリネージを活用することができます。リネージは、コンプライアンスのための監査レポートをの生成に役立つ、モデルのトレーニングで使用された正確なデータや、推論テーブルのデータを提供します。
- **最先端モデルへのアクセス(パブリックプレビュー):** UCから管理、デプロイできる最先端のサードパーティモデルを[Databricksマーケットプレイス](https://qiita.com/taka_yayoi/items/22c635906275f112a4d0)からダウンロードすることができます。

> 「我々の継続的な再トレーニングの要件において、最低限のレーテンシーで入出力をシームレスに連携できる推論テーブルが重要だったのでDatabricksを選択しました。さらに、Deltaテーブルにデータを送信するわかりやすい設定によって、再トレーニングのモニタリング、デバッグ、自動化において、馴染みのあるSQLやワークフローを活用することができます。これによって、我々のお客様は常に最新のモデルのメリットを享受できるようになりました。」— Shu Ming Peh, Lead Machine Learning Engineer at Hipages Group

## デプロイメント

- **1クリックのモデルデプロイメント(正式提供):** UCにおけるモデルは、1クリックで[Databricksによるモデルサービング](https://docs.databricks.com/ja/machine-learning/model-serving/index.html)のAPIとしてデプロイすることができます。もはや、Kubernetesのエキスパートになる必要はありません。モデルサービングは、CPUやGPUのサーバレスアーキテクチャを用いて、お使いのモデルのトラフィックに対応するために、自動でスケールアップ、スケールダウンします。ステージ分けされたロールアウトのための、A/Bテストのためのトラフィック分割はシンプルなUIの設定あるいはAPIで行うことができます。
- **リアルタイムのオンデマンド特徴量のサービング(正式提供):** 我々のリアルタイム特徴量エンジニアリングサービスは、特徴量の検索や再計算のためのインフラストラクチャの構築の必要性を排除します。レイクハウスAIプラットフォームは、モデルの推論でどのようなデータや変換処理が必要なのかを理解し、特徴量の検索、結合のための低レーテンシーサービスを提供します。これは、オンライン/オフラインの偏りを防ぐだけではなく、複数のプロジェクトでこれらのデータ変換処理を共有することができます。
- **MLOpsスタックによるプロダクション化(パブリックプレビュー):** 改善された[Databricks CLI](https://docs.databricks.com/ja/dev-tools/cli/index.html)は、Databricks REST APIをベースとしたワークフローを開発し、CI/CDと連携するためのビルディングブロックを提供します。[Databricks Asset Bundles](https://www.databricks.com/jp/blog/announcing-public-preview-databricks-assets-bundles-apply-software-development-best-practices)やBundlesによって、チームはレイクハウスにおいてプロジェクトをどのようにテストし、デプロイするのかを含むエンドツーエンドのプロジェクトをコード化することができます。本日、最新の[Big Book of MLOps](https://www.databricks.com/resources/ebook/the-big-book-of-mlops)で定義されている、MLOpsのベストプラクティスをカプセル化した[MLOps Stacks](https://github.com/databricks/mlops-stack)のパブリックプレビューを発表しました。MLOpsスタックは、堅牢かつ自動化された方法でモデルのプロダクション化を行うすぐに利用できるソリューションを提供するために、レイクハウスAIプラットフォームのすべてのピースをつなげるためにバンドルを活用しています。

## モニタリング

- **自動ペイロード記録(パブリックプレビュー):** [推論テーブル](https://docs.databricks.com/ja/machine-learning/model-serving/inference-tables.html)は、レイクハウスパラダイムの究極の具現化です。これらは、モデルのリクエストとレスポンスを格納するUCマネージドのDeltaテーブルです。推論テーブルは非常にパワフルであり、モニタリング、診断、トレーニングデータセットの作成、コンプライアンスの監査で活用することができます。バッチ推論においては、多くのチームではすでにこのようなテーブルを作成しています。オンライン推論においては、ペイロードの記録を自動化するためにお使いのエンドポイントで推論テーブルを有効化することができます。
- **品質モニタリング(パブリックプレビュー):** [レイクハウスモニタリング](https://docs.databricks.com/ja/lakehouse-monitoring/index.html)を用いることで、モデルやデータパフォーマンスのドリフトに対するリアルタイムのアラートを行うために、推論テーブルやUnity Catalogの他のDeltaテーブルをモニタリングすることができます。モニタリングはパフォーマンスのメトリクスを可視化するためのダッシュボードを自動生成し、メトリクスが閾値を超えた際のリアルタイム通知を送信するためにアラートを設定することができます。

これらの機能のすべては、一つの集中管理されたガバナンスレイヤーでデータとAIの資産の両方を管理するレイクハウスAIプラットフォームでのみ実現可能です。そして、これらはMLOpsの美しい像を描きます: データサイエンティストはプロダクションデータを用いてモデルをトレーニングし、モニタリングダッシュボードを検証することでモデル品質の劣化を検知、デバッグし、プロダクションの推論テーブルを用いてモデルの予測結果にディープダイブし、オンラインのプロダクションモデルとオフラインのモデルを比較します。これによって、MLOpsのプロセスを加速し、モデルとデータの品質を改善、維持することができます。

# 次のステップ

上述した機能のすべてはパブリックプレビューあるいはGAです。[Big Book of MLOpsをダウンロード](https://www.databricks.com/resources/ebook/the-big-book-of-mlops)し、レイクハウスAIプラットフォームでのMLOpsジャーニーをスタートしましょう。プロフェッショナルサービスの参画やMLOpsのウォークスルーを希望される場合には、Databricksアカウントチームにコンタクトしてください。

### Databricksクイックスタートガイド

[Databricksクイックスタートガイド](https://www.amazon.co.jp/dp/B09V1YXFVQ/)


### Databricks無料トライアル

[Databricks無料トライアル](https://databricks.com/jp/try-databricks)