Amazon Web Services ブログ

Amazon SageMaker の新機能 — シャドウテストを実行して ML モデルバリアント間の推論パフォーマンスを比較する

機械学習 (ML) ワークロードを本番環境に移行する際には、デプロイされたモデルを継続的に監視し、モデルのパフォーマンスに偏差が見られる場合は繰り返し処理を行う必要があります。新しいモデルを構築する場合、通常、過去の推論要求データを使用してオフラインでモデルの検証を開始します。しかし、このデータでは、現在の現実世界の状況を説明できない場合があります。たとえば、製品レコメンデーションモデルではまだ見られなかった新製品がトレンドになる場合があります。また、これまでモデルに触れたことのない推論リクエストの量が本番環境で突然急増するかもしれません。

11 月 30 日、Amazon SageMakerによるシャドウテストのサポートを発表できることを嬉しく思います。

モデルをシャドウモードでデプロイすると、本番モデルのライブ推論リクエストのコピーを新しい (シャドウ) モデルに転送することで、より包括的なテストを実施できます。ただし、呼び出し元のアプリケーションにはプロダクションモデルからの応答のみが返されます。シャドウテストは、モデルの信頼性を高め、エンドユーザーに影響が及ぶ前に潜在的な構成エラーやパフォーマンスの問題を特定するのに役立ちます。シャドウテストが完了したら、SageMaker 推論エンドポイントのデプロイガードレールを使用して、本番環境でモデルを安全に更新できます。

Amazon SageMaker シャドウテストを開始する
新しい SageMaker 推論コンソールと API を使用してシャドウテストを作成できます。シャドウテストでは、シャドウテストの結果の設定、監視、表示、およびアクションをフルマネージドで行うことができます。SageMaker エンドポイントを中心に構築された既存のワークフローがある場合は、既存の SageMaker 推論 API を使用してモデルをシャドウモードでデプロイすることもできます。

SageMaker コンソールで、[推論テスト] と [シャドウテスト] を選択し、シャドウテストを作成、監視、デプロイします。

Amazon SageMaker シャドウテスト

シャドウテストを作成するには、既存の (または新規 ) SageMaker エンドポイントとテストしたいプロダクションバリアントを選択します。

Amazon SageMaker - シャドウテストを作成する

次に、シャドウバリアントに送信するトラフィックの割合、評価する比較メトリック、およびテスト期間を設定します。プロダクションバリアントとシャドウバリアントのデータキャプチャを有効にすることもできます。

Amazon SageMaker - シャドウテストを作成する

これで完了です。SageMaker では、新しいバリアントをシャドウモードで自動的にデプロイし、推論要求のコピーをすべて同じエンドポイント内でリアルタイムにルーティングするようになりました。以下の図は、このワークフローを示したものです。

Amazon SageMaker -シ ャドウテスト

プロダクションバリアントの応答のみが呼び出し元のアプリケーションに返されるため、注意してください。シャドウバリアントの応答を破棄するか、オフライン比較用にログに記録するかを選択できます。

また、シャドウテストを使用して、サービングコンテナや ML インスタンスなど、プロダクションバリアントの任意のコンポーネントに加えた変更を検証することもできます。これは、サービングコンテナーの新しいフレームワークバージョンにアップグレードする場合や、パッチを適用する場合、またはこの変更によるレイテンシーやエラー率への影響がないことを確認したい場合に役立ちます。同様に、AWS Graviton プロセッサベースの Amazon EC2 C7g インスタンスや NVIDIA A10G Tensor Core GPU を搭載した EC2 G5 インスタンスなど、別の ML インスタンスタイプへの移行を検討している場合は、ロールアウト前にシャドウテストを使用してプロダクショントラフィックのパフォーマンスを評価できます。

シャドウテストの進行状況と、レイテンシーやエラー率などのパフォーマンスメトリックをライブダッシュボードで監視できます。SageMaker コンソールで [推論テストとシャドウテスト] を選択し、監視するシャドウテストを選択します。

Amazon SageMaker - モニターシャドウテスト

Amazon SageMaker - モニターシャドウテスト

シャドウモデルを本番環境にプロモートする場合は、[シャドウバリアントのデプロイ] を選択し、シャドウバリアントをデプロイするインフラストラクチャ構成を定義します。

Amazon SageMaker - シャドウバリアントをデプロイ

Amazon SageMaker - シャドウバリアントをデプロイ

更新に線形または canary トラフィックシフトモードと自動ロールバックを追加したい場合は、SageMaker デプロイガードレールを使用することもできます。

利用可能なリージョンと料金
現在、SageMaker によるシャドウテストは、AWS GovCloud (米国) リージョンと AWS 中国リージョンを除く、SageMaker ホスティングが利用可能なすべての AWS リージョンでご利用いただけます。

SageMaker シャドウテストには、シャドウバリアントをホストするためにプロビジョニングされた ML インスタンスと ML ストレージの使用料金以外に追加料金はかかりません。ML インスタンスと ML ストレージディメンションの料金は、リアルタイム推論オプションと同じです。シャドウデプロイの内外で処理されたデータには追加料金はかかりません。SageMaker の料金ページに、すべての詳細が記載されています。

詳細については、Amazon SageMaker シャドウテストをご覧ください。

SageMaker シャドウテストで新しい ML モデルの検証を今すぐ始めましょう!

Antje

原文はこちらです。