トレーニング済みの Amazon Lookout for Vision モデルの実行 - Amazon Lookout for Vision

トレーニング済みの Amazon Lookout for Vision モデルの実行

モデルにより画像内の異常を検出するためには、まず[StartModel] オペレーションでモデルを開始する必要があります。Amazon Lookout for Vision コンソールは、モデルの開始と停止に使用できる AWS CLI コマンドを提供しています。このセクションは、使用できるサンプルコードを含みます。

モデルの開始後は、DetectAnomalies オペレーションを使用して画像の異常を検出することができます。詳細については、「画像内の異常を検出する」を参照してください。

推論単位

モデルを開始すると、Amazon Lookout for Vision は、推論単位と呼ばれる最低 1 つのコンピューティングリソースをプロビジョニングします。StartModel API への MinInferenceUnits 入力パラメータで、使用する推論単位数を指定します。モデルのデフォルトの割り当ては 1 推論単位です。

重要

課金は、モデルが実行される時間数と、モデルがその実行中に使用する推論単位の数に基づいて行われます。たとえば、モデルを 2 推論単位で開始し、モデルを 8 時間使用すると、16 推論時間 (8 時間の実行時間× 2 推論単位) に対して課金されます。詳細については、「Amazon Lookout for Vision の料金」を参照してください。StopModel を呼び出してモデルを明示的に停止しないと、モデルで画像をアクティブに分析していない場合でも課金されます。

単一の推論単位がサポートする 1 秒あたりのトランザクション (TPS) は、次の影響を受けます:

  • Lookout for Vision がモデルのトレーニングに使用するアルゴリズム。モデルをトレーニングすると、複数のモデルがトレーニングされます。Lookout for Vision では、データセットのサイズと正常画像と異常画像の構成に基づいて、最適なパフォーマンスを備えたモデルが選択されます。

  • 高解像度の画像では、解析に時間がかかります。

  • 小さいサイズの画像 (MB単位) は、大きな画像よりも速く分析されます。

推論単位によるスループットの管理

アプリケーションの要求に応じて、モデルのスループットを増やしたり減らしたりすることができます。スループットを増やすには、追加の推論単位を使用します。推論単位を追加するたびに、処理速度が 1 推論単位増加します。必要な推論単位数の計算方法については、「Amazon Rekognition Custom Labels と Amazon Lookout for Vision モデルの推論単を計算する」を参照してください。モデルのサポート対象スループットを変更する場合は、次の 2 つのオプションがあります:

手動で推論単位を追加または削除する

モデルを停止し、必要な推論単位数で再開します。この方法の欠点は、再開中はモデルがリクエストを受け取ることができず、需要の急増に対処できないことです。モデルのスループットが安定していて、ユースケースが 10 ~ 20 分のダウンタイムを許容できる場合は、このアプローチを使用してください。例としては、週単位のスケジュールを使用してモデルへの呼び出しをバッチ処理する場合などが挙げられます。

推論単位数を自動スケーリングする

モデルが需要急増に対応する必要がある場合、Amazon Lookout for Vision は、モデルが使用する推論単位数を自動的にスケーリングできます。需要が高まると、Amazon Lookout for Vision はモデルに推論単位数を追加し、需要が減少するとそれを削除します。

Lookout for Vision がモデルの推論単位数を自動的にスケーリングできるようにするには、モデルを開始し、使用できる推論単位の最大数を MaxInferenceUnits パラメーターにより設定します。推論単位の最大数を設定すると、使用可能な推論単位の数を制限することで、モデルの実行コストを管理できます。最大単位数を指定しない場合、Lookout for Vision はモデルを自動的にスケーリングせず、最初に設定した推論単位の数を使用するだけです。推論単位の最大数については、「Service Quotas」を参照してください。

MinInferenceUnits パラメータを使用して推論単位の最小数も指定できます。これにより、モデルの最小スループットを指定できます。1 つの推論単位は 1 時間の処理時間を表します。

注記

Lookout for Vision コンソールでは推論単位の最大数を設定できません。代わりに、StartModel オペレーションに MaxInferenceUnits 入力パラメーターを指定してください。

Lookout for Vision には、モデルの現在の自動スケーリングステータスを判断するために使用できる以下の Amazon CloudWatch Logs メトリクスが用意されています。

メトリクス 説明

DesiredInferenceUnits

Lookout for Vision のスケールアップまたはスケールダウンの対象となる推論単位数。

InServiceInferenceUnits

モデルが使用する推論単位数。

DesiredInferenceUnits = InServiceInferenceUnits の場合、Lookout for Vision は現在、推論単位数をスケーリングしていません。

DesiredInferenceUnits > InServiceInferenceUnits の場合、Lookout for Vision は DesiredInferenceUnits の値までスケールアップしています。

DesiredInferenceUnits < InServiceInferenceUnits の場合、Lookout for Vision は DesiredInferenceUnits の値までスケールダウンしています。

Lookout for Vision によって返されるメトリクスに関する詳細については、「Amazon CloudWatch による Lookout for Vision のモニタリング」を参照してください。

モデルに対してリクエストした推論単位の最大数を確認するには、DescribeModel を呼び出してレスポンス内の MaxInferenceUnits フィールドをチェックします。

アベイラビリティーゾーン

Amazon Lookout for Vision は、AWS リージョン内の複数のアベイラビリティーゾーンに推論単位を分散させ、可用性を高めます。詳細については、「アベイラビリティーゾーン」を参照してください。アベイラビリティーゾーンの停止や推論単位の障害から量産モデルを保護するために、少なくとも 2 つの推論単位を使用して量産モデルを開始することを強くお勧めします。

アベイラビリティーゾーンの停止が発生すると、アベイラビリティーゾーン内のすべての推論単位が使用できなくなり、モデル容量が削減されます。DetectAnomalies への呼び出しは、残りの推論単位に再配分されます。このような呼び出しは、残りの推論単位の 1 秒あたりのトランザクション(TPS) がサポート範囲を超えていなければ成功します。AWS がアベイラビリティーゾーンを修復した後、推論単位が再開され、完全な容量が復元されます。

1 つの推論単位に障害が発生すると、Lookout for Vision は同じアベイラビリティーゾーンで新しい推論単位を自動的に開始します。新しい推論単位が始まるまで、モデル容量は減少します。