機械学習ライブラリ、フレームワーク、言語を使って実験することができ、各実験のパラメータ、メトリック、コード、およびモデルを自動的に追跡します。Databricks ワークスペースとノートブックの組み込みの統合機能により、Databricks 上でMLflow を使用することで、対応する成果物やコードバージョンも含めた実験結果の安全な共有、管理、比較ができます。
一元的な場所を使用して、機械学習モデルの検出と共有、実験からオンラインでのテストと実稼働への移行に関する共同作業、承認とガバナンスのワークフローと CI/CD パイプラインとの統合、機械学習のデプロイとそのパフォーマンスを監視します。MLflowモデルレジストリを使用することで、専門知識と知識の共有を容易にし、管理を維持できます。
MLflow 追跡:Python、 REST、 R API、Java API を使用して、実行ごとにパラメータ、コードバージョン、メトリック、アーティファクトを、自動的に記録します
MLflow 追跡サーバー:実行と実験をすべて 1 か所に記録できる組み込みの追跡サーバーをすぐに使用できます。Databricks での設定は不要です。
実験管理:アクセス制御と検索クエリを使用して、ワークスペース内から実験を作成、保護、整理、検索、視覚化します。
MLflow 実行サイドバー:ノートブック内から実行を自動的に追跡し、実行ごとにノートブックのスナップショットをキャプチャして、以前のバージョンのコードにいつでも戻ることができます。
実行のデータ記録:パラメータ、データセット、メトリック、アーティファクトなどの実行をローカルファイル、SQLAlchemy 互換のデータベース、またはリモートの追跡サーバーに記録します。
Delta Lake の統合:モデルに Delta Lake スナップショットを提供した大規模なデータセットを追跡します。
アーティファクトの格納:S3 バケット、共有 NFS ファイルシステム、モデルなどの大きなファイルを、Amazon S3、Azure Blob Storage、Google Cloud ストレージ、SFTP サーバー、NFS、ローカルファイルパスに保存します。
MLflow プロジェクト:MLflow プロジェクトでは、コードの実行で使用するソフトウェア環境を指定できます。MLflow は現在、Conda 環境、Docker コンテナ環境、およびシステム環境のプロジェクト環境をサポートしています。Git リポジトリまたはローカルディレクトリは、MLflow プロジェクトとして扱うことができます。
リモート実行モード:Databricks CLI を使用して Databricks クラスターで Git またはローカルソースから MLflow プロジェクトをリモートで実行し、コードをすばやく拡張します。
中央リポジトリ:MLflow モデルを MLflow Model Registry に登録します。登録されたモデルは、一意の名前、バージョン、ステージ、およびその他のメタデータを持ちます。
モデルのバージョン管理:更新時に登録済みモデルのバージョンを自動的に追跡します。
モデルステージ: モデルのライフサイクルを表す「ステージング」や「本番」などのあらかじめ設定されたステージやカスタムステージが各モデルバージョンに割り当てられます。
CI/CD ワークフローの統合:CI/CD パイプラインの一部として、ステージの移行、要求、レビュー、および変更を記録し、制御およびガバナンスを改善します。
モデルステージの移行:新しい登録イベントまたは変更を、ユーザー、変更、およびコメントといった追加のメタデータを自動的に記録するアクティビティとして記録します。
MLflow モデル:さまざまなダウンストリームツール(例:REST API を介したリアルタイムサービスや、Apache Spark でのバッチ推論)で使用可能な、機械学習モデルをパッケージ化するための標準形式です。
モデルのカスタマイズ:MLflow の組み込みフレーバーで明示的にサポートされていない ML ライブラリのモデルについては、カスタム Python モデルおよびカスタムフレーバーを使用します。
組み込みのモデルフレーバー:MLflow は、Python および R 関数、H20、Keras、MLeap、PyTorch、scikit-learn、Spark MLlib、TensorFlow、ONNX など、アプリケーションで役立つ標準フレーバーを提供します。組み込みのデプロイツール:Apache Spark UDF、ローカルマシン、または Microsoft Azure ML、Amazon SageMaker、およびデプロイ用の Docker イメージの構築など、さまざまな本番環境を介して、Databricks にすばやくデプロイします。
最新の機能の詳細については、Azure DatabricksとAWSの製品ニュースをご覧ください。
オープンソースの MLflow |
Databricks でのマネージド型 MLflow |
実験の追跡 |
MLflow 追跡 API | ![]() |
![]() |
MLflow 追跡サーバー | 自己ホスト型 | フルマネージド型 |
ノートブックの統合 | ![]() |
![]() |
ワークスペースの統合 | ![]() |
![]() |
再現可能なプロジェクト |
MLflow プロジェクト | ![]() |
![]() |
Git と Conda の統合 | ![]() |
![]() |
プロジェクト実行のためのスケーラブルなクラウド/クラスター | ![]() |
![]() |
モデル管理 |
MLflow Model Registry | ![]() |
![]() |
モデルのバージョン管理 | ![]() |
![]() |
ACL ベースのステージ遷移 | ![]() |
![]() |
CI/CD ワークフローの統合 | ![]() |
![]() |
柔軟なデプロイ |
MLflow モデル | ![]() |
![]() |
組み込みのバッチ推論 | ![]() |
![]() |
組み込みのストリーミング分析 | ![]() |
![]() |
セキュリティと管理 |
高可用性 | ![]() |
![]() |
自動更新 | ![]() |
![]() |
ロールベースのアクセス制御 | ![]() |
![]() |
MLflow は、機械学習ワークフロー全体を通して任意の ML フレームワークで使用できる、API とユーザーインターフェイスの軽量なセットです。次の 4 つのコンポーネントが含まれます。
Databricks でのマネージド型 MLflow は、実行者に Databricks ノートブック、ジョブ、およびデータストア全体での再現性と実験管理を提供する、MLflow のフルマネージド型バージョンであり、統合データ分析プラットフォームの高い信頼性、セキュリティ、スケーラビリティを備えています。