翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SageMaker AI with MLflow は、機械学習実験を作成、管理、分析、比較できる Amazon SageMaker AI の機能です。
機械学習の実験
機械学習は反復的なプロセスであり、データ、アルゴリズム、パラメータをさまざまに組み合わせて試し、それによるモデルの精度への影響を観察する必要があります。ML 実験の反復的という性質上、モデルトレーニングの実行回数もバージョン数も膨大になるため、最もパフォーマンスの高いモデルとその設定を追跡することは困難です。反復トレーニングの実行を管理および比較する複雑さは、生成人工知能 (生成 AI) が登場したことで一層増しています。実験では、モデルをファインチューニングするだけでなく、創造的で多様な出力を探すことも求められるようになりました。研究者は、生成されるコンテンツを品質と創造性の両面から最適化するために、ハイパーパラメータを調整し、適切なモデルアーキテクチャを選定し、多様なデータセットを選別する必要があります。生成 AI モデルを評価するには、定量的および定性的なメトリクスが両方必要であり、そのせいで実験プロセスが一層複雑になっています。
Amazon SageMaker AI で MLflow を使用して、反復的な ML 実験を追跡、整理、表示、分析、比較し、比較インサイトを取得し、最もパフォーマンスの高いモデルを登録してデプロイします。
MLflow の統合
モデルのトレーニング中や評価中に MLflow を使用して、ユースケースに最適な候補を見つけることができます。MLflow UI の実験間でモデルのパフォーマンス、パラメータ、メトリクスを比較し、MLflow Model Registry で最適なモデルを追跡し、SageMaker AI モデルとして自動的に登録し、登録済みモデルを SageMaker AI エンドポイントにデプロイできます。
Amazon SageMaker AI と MLflow
MLflow を使用して、モデルの開発、管理、デプロイ、追跡 AWS の統合により、機械学習 (ML) ライフサイクルの実験フェーズを追跡および管理します。
Amazon SageMaker Studio
追跡サーバーを作成して管理し、ノートブックを実行して実験を作成し、MLflow UI にアクセスして実験の実行を表示および比較するなど、そのすべてを Studio で行うことができます。
SageMaker Model Registry
MLflow Model Registry から SageMaker Model Registry にモデルを自動的に登録して、本番稼働用のモデルバージョンとカタログモデルを管理します。詳細については、「SageMaker AI モデルを SageMaker Model Registry に自動的に登録する」を参照してください。
SageMaker AI 推論
を使用して、SageMaker AI エンドポイントにデプロイするための最適なモデルを準備しますModelBuilder
。詳細については、「ModelBuilder で MLflow モデルをデプロイする」を参照してください。
AWS Identity and Access Management
IAM でロールベースのアクセスコントロール (RBAC) を使用して、MLflow へのアクセスを設定します。MLflow 追跡サーバーのクライアントが呼び出せる MLflow API を承認する IAM アイデンティティポリシーを作成します。すべての MLflow REST API は、sagemaker-mlflow
というサービスプレフィックスが付いた IAM アクションとして表されます。詳細については、「MLflow の IAM アクセス許可を設定する」を参照してください。
AWS CloudTrail
のログを表示 AWS CloudTrail して、 AWS アカウントの運用およびリスク監査、ガバナンス、コンプライアンスを有効にすることができます。詳細については、「AWS CloudTrail ログ」を参照してください。
Amazon EventBridge
Amazon EventBridge でキャプチャされた MLflow イベントを基に、モデルのレビューとデプロイのライフサイクルを自動化します。詳細については、「Amazon EventBridge イベント」を参照してください。
サポート AWS リージョン
MLflow を使用した Amazon SageMaker AI は、中国リージョンと リージョンを除く、Amazon SageMaker Studio が利用可能なすべての AWS 商用 AWS GovCloud (US) リージョンで一般利用可能です。MLflow を備えた SageMaker AI は、欧州 (チューリッヒ)、アジアパシフィック (ハイデラバード)、アジアパシフィック (メルボルン)、カナダ西部 (カルガリー) AWS CLI の でのみ使用できます AWS リージョン。
追跡サーバーは、指定されたリージョン内の単一のアベイラビリティーゾーンで起動します。
仕組み
MLflow 追跡サーバーには、コンピューティング、バックエンドメタデータストレージ、アーティファクトストレージという 3 つの主要コンポーネントがあります。追跡サーバーとバックエンドメタデータストレージをホストするコンピューティングは、SageMaker AI サービスアカウントで安全にホストされます。アーティファクトストレージは、自分の AWS アカウントの Amazon S3 バケットに存在します。

追跡サーバーには ARN があります。この ARN を使用して MLflow SDK を追跡サーバーに接続し、トレーニングの実行を MLflow に記録し始めることができます。
次の主要概念の詳細について、後述します。
バックエンドメタデータストレージ
MLflow 追跡サーバーを作成すると、実行
アーティファクトストレージ
各実行のメタデータ (実験実行のモデルの重み、イメージ、モデルファイル、データファイルなど) を MLflow で永続的に保存できるように、Amazon S3 を使用してアーティファクトストアを作成する必要があります。アーティファクトストアは AWS アカウント内で設定する必要があり、アーティファクトストアにアクセスするには、MLflow に Amazon S3 へのアクセスを明示的に許可する必要があります。詳細については、MLflow ドキュメントの「Artifact Stores
MLflow 追跡サーバーのサイズ
オプションで、Studio UI または AWS CLI パラメータ を使用して追跡サーバーのサイズを指定できます--tracking-server-size
。"Small"
、"Medium"
、"Large"
のいずれかから選択できます。デフォルトの MLflow 追跡サーバーの設定サイズは "Small"
です。ログに記録されるデータ量、ユーザー数、使用頻度など、追跡サーバーの予想使用量に応じてサイズを選択できます。
ユーザー数が 25 人以下のチームには小さな (Small) 追跡サーバー、50 人以下のチームには中規模な (Medium) 追跡サーバー、最大 100 人のチームには大きな (Large) 追跡サーバーを使用することをお勧めします。これらの推奨は、ユーザー全員が同時に MLflow 追跡サーバーにリクエストを行うことを前提としています。予想される使用状況パターンと各追跡サーバーが対応している TPS (1 秒あたりのトランザクション数) に基づいて、追跡サーバーのサイズを選択してください。
注記
ワークロードの性質と追跡サーバーに対して行うリクエストのタイプによって、TPS が決まります。
追跡サーバーのサイズ | 持続的 TPS | バースト時の TPS |
---|---|---|
Small | 最大 25 | 最大 50 |
Medium | 最大 50 | 最大 100 |
Large | 最大 100 | 最大 200 |
追跡サーバーのバージョン
SageMaker AI では、次の MLflow バージョンを使用できます。
MLflow バージョン | Python バージョン | SageMaker AI バージョン |
---|---|---|
MLflow 2.16 |
Python 3.8 |
0.1.0 |
MLflow 2.13 |
Python 3.8 |
0.1.0 |
追跡サーバーの最新バージョンには、最新の機能、セキュリティパッチ、バグ修正が含まれています。新しい追跡サーバーを作成するときは、最新バージョンを使用することをお勧めします。追跡サーバーの作成の詳細については、「」を参照してくださいMLflow 追跡サーバー。
MLflow 追跡サーバーのセマンティックバージョニング。バージョンは の形式です
。major-version
.minor-version
.patch-version
新しい UI 要素や API 機能などの最新の機能は、マイナーバージョンにあります。
AWS CloudTrail ログ
AWS CloudTrail は、MLflow 追跡サーバーに関連するアクティビティを自動的にログに記録します。次の API コールが CloudTrail に記録されます。
-
CreateMlflowTrackingServer
-
DescribeMlflowTrackingServer
-
UpdateMlflowTrackingServer
-
DeleteMlflowTrackingServer
-
ListMlflowTrackingServers
-
CreatePresignedMlflowTrackingServer
-
StartMlflowTrackingServer
-
StopMlflowTrackingServer
CloudTrail の詳細については、「AWS CloudTrail ユーザーガイド」を参照してください。
Amazon EventBridge イベント
EventBridge を使用して、SageMaker AI での MLflow の使用から組織全体のコンシューマーアプリケーションにイベントをルーティングします。以下のイベントが EventBridge に送信されます。
-
「SageMaker 追跡サーバーの作成中」
-
「SageMaker 追跡サーバーの作成完了」
-
「SageMaker 追跡サーバーの作成失敗」
-
「SageMaker 追跡サーバーの更新中」
-
「SageMaker 追跡サーバーの更新完了」
-
「SageMaker 追跡サーバーの更新失敗」
-
「SageMaker 追跡サーバーの削除中」
-
「SageMaker 追跡サーバーの削除完了」
-
「SageMaker 追跡サーバーの削除失敗」
-
「SageMaker 追跡サーバーの起動中」
-
「SageMaker 追跡サーバーの起動完了」
-
「SageMaker 追跡サーバーの起動失敗」
-
「SageMaker 追跡サーバーの停止中」
-
「SageMaker 追跡サーバーの停止完了」
-
「SageMaker 追跡サーバーの停止失敗」
-
「SageMaker 追跡サーバーのメンテナンス中」
-
「SageMaker 追跡サーバーのメンテナンス完了」
-
「SageMaker 追跡サーバーのメンテナンス失敗」
-
「SageMaker MLFlow 追跡サーバーで実行を作成中」
-
「SageMaker MLFlow 追跡サーバーで RegisteredModel を作成中」
-
「SageMaker MLFlow 追跡サーバーで ModelVersion を作成中」
-
「SageMaker MLFlow 追跡サーバーの ModelVersion ステージを切り替え中」
-
「SageMaker MLFlow 追跡サーバーで登録済みモデルのエイリアスを設定中」
EventBridge の詳細については、「Amazon EventBridge ユーザーガイド」を参照してください。