イメージ分類モデルのデプロイインフラストラクチャの選択 - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

イメージ分類モデルのデプロイインフラストラクチャの選択

次の 3 つの主な側面を考慮して、イメージ分類エンドポイントに最適なデプロイオプションを選択することをお勧めします。

  • 必要なエンドポイントの応答時間

  • ソリューションの複雑さと利用可能な人事

  • コスト制限

エンドポイントの応答時間とコストの制限は、より簡単に定量化され、最初に決定することをお勧めします。ソリューションの複雑さの制約は、スタッフの時間とリソースのバランスによって異なります。最も複雑なソリューションには、Amazon Rekognition または Amazon Rekognition Custom Labels の使用が含まれます。大規模なコンピュータビジョンモデルは、Amazon API Gateway インスタンスと AWS Lambda 関数の背後に配置すると、応答に最大 1 秒かかることがあります。Amazon SageMaker AI Canvas は、1 秒以内に応答するエンドポイントを、低レベルの開発作業でデプロイすることもできます。

イメージ分類モデルは、Docker イメージを使用して AWS Lambda 関数に配置できます。Lambda 関数が呼び出されると、モデルのロード時間が原因でエンドポイントの応答を遅らせるコールドスタートが発生する可能性があります。プロビジョニングされた同時実行オプションを使用して、Lambda 関数が指定されたレベルの同時実行に対して、または自動スケーリングポリシーに従って 1 秒未満で応答するようにすることもできます。

モデルの応答時間は、モデルの処理時間とデプロイされたエンドポイントの応答時間によって異なります。各デプロイオプションの応答時間を、実装の労力別に整理して次に示します。

  • 最小限の労力 – Amazon Rekognition、Amazon Rekognition Custom Labels、および SageMaker AI Canvas は、最小限の労力でデプロイできるオプションです。これらのソリューションの応答時間は、1 秒未満から数時間までの範囲です。

  • 中程度の労力 ­– SageMaker AI は中程度の労力のデプロイオプションです。 SageMaker AI リアルタイムエンドポイントは 1 秒未満で応答でき、 SageMaker AI サーバーレス推論ユニットは数秒で応答でき、 SageMaker AI バッチ変換は通常数時間で応答します。

  • 最大限の労力 — Amazon ECSまたは Amazon EKSカスタムエンドポイントと AWS Lambda 関数は、最も労力の高いデプロイオプションです。これらのカスタムトレーニングジョブの応答時間は、1 秒未満から数時間までの範囲です。応答時間が 1 秒未満の場合、Lambda 関数の同時実行数をプロビジョニングできます。

最も労力のかかるソリューションは、インフラストラクチャコストが低くなる可能性が高くなります。ただし、エンジニアのメンテナンス時間の追加コストと比較してください。

一般的なデプロイパターンは、次の図に示すように、エンドポイント呼び出しの前に APIゲートウェイと Lambda 関数を配置することです。これは、Amazon Rekognition からの推論レスポンスが Amazon API Gateway を介して呼び出し元のクライアントに送り返される前に、さらに処理が必要な状況で推奨されます。

一般的なデプロイパターン

ただし、処理が非常に重い状況では、Lambda 関数の処理によるネットワークレイテンシーのペナルティを減らすために、別のワークフローが必要になる場合があります。レイテンシーが非常に低い場合、APIゲートウェイ呼び出しAPIで Amazon Rekognition を強制するコストで Lambda 関数を省略できます。

数秒のレイテンシーを許容できるイメージ分類システムの場合は、 SageMaker AI サーバーレス推論エンドポイントを使用します。 SageMaker AI サーバーレス推論と AWS Lambda デプロイの両方で、呼び出しごとに実行時間には 15 分の制限があります。これは、最も人気のある画像分類モデルにとって大きな安全性マージンです。

オフラインイメージ分類や、迅速な応答時間が重要でないアプリケーションでは、Amazon Rekognition でバッチ推論を使用できます。詳細については、 AWS Machine Learning ブログのAmazon Rekognition Custom Labels を使用したバッチイメージ処理」を参照してください。 SageMaker AI Canvas やその他の方法でトレーニングされた SageMaker AI モデルに SageMaker AI バッチ変換を使用することもできます。例については、SageMaker 「AI Batch Transform for PyTorch Batch Inference notebook on」を参照してください GitHub。