「Amazon Rekognition Custom LabelsとAWS Step Functionsを使用して、PurinaのPetfinderアプリケーションのペットプロファイルを最適化する」
「Amazon Rekognition Custom LabelsとAWS Step Functionsを活用して、PurinaのPetfinderアプリケーションのペットプロファイルを最適化する方法」(Harnessing Amazon Rekognition Custom Labels and AWS Step Functions to Optimize Pet Profiles on Purina's Petfinder Application)
Purina US、ネスレの子会社、はPetfinderを通じてペットの里親探しをより簡単にするための長い歴史を持っています。これは、アメリカ、カナダ、メキシコ全域にわたる11,000を超える動物保護施設やレスキューグループのデジタルマーケットです。ペット達にとって永遠の家族を見つけるのを支援する、ペットの里親探しのリーディングプラットフォームであるPetfinderは、何百万ものペット達が自分の永遠の家族を見つけるのを助けてきました。
Purinaは、ペットシェルターやレスキューグループ、そして里親候補者にとってPetfinderプラットフォームをさらに良くする方法を常に模索しています。彼らが直面する課題の一つは、里親になれる動物の種類を適切に反映することでした。シェルターの多くの動物が雑種であるため、ペットプロフィールで品種や特徴を正確に識別するためには手作業が必要で、時間がかかります。Purinaは人工知能(AI)と機械学習(ML)を使用して、動物の品種検出を自動化しました。
この記事では、PurinaがAmazon Rekognitionカスタムラベル、AWS Step Functions、および他のAWSサービスを使用して、アップロードされた画像からペットの品種を検出し、その予測を自動的に表示するMLモデルを作成した方法について詳しく説明します。このソリューションでは、データの準備、モデルのトレーニング、モデルの評価、モデルのモニタリングというAI / MLアプリケーションワークフローの基本原則に焦点を当てています。
解決策の概要
画像から動物の種を予測するにはカスタムのMLモデルが必要です。イメージ解析のためのカスタムモデルの開発は、多くの時間、専門知識、リソースが必要であり、通常は数か月かかります。さらに、正確な意思決定を行うために、数千または数万の手作業によるラベリングされた画像が必要です。モデルの予測を監査または確認するためにワークフローを設定することは、全体的な複雑さをさらに増加させることがあります。
- 「大規模言語モデルにおける早期割れに打ち勝てるか?Google AIがパフォーマンス向上のためにバッチキャリブレーションを提案」
- 「NVIDIAは創造的AIの台頭に対応するため、ロボティクスプラットフォームを拡大する」
- 「AutoGen:次世代の大規模言語モデルアプリケーションの動力源」
Amazon Rekognition Custom Labelsは、ビジネスニーズに特化した画像内のオブジェクトやシーンを識別できる既存のAmazon Rekognitionの機能を基にしています。すでに多数のカテゴリにわたる何千万もの画像で訓練済みです。数千の画像ではなく、使用ケースに特化した少数のトレーニング画像(通常はカテゴリごとに数百枚以下)をアップロードすることができます。
このソリューションでは、以下のサービスを使用しています:
- Amazon API Gatewayは、開発者がスケーラビリティを問わず、APIを簡単に公開、維持、監視、保護できる完全管理型サービスです。
- AWS Cloud Development Kit(AWS CDK)は、モダンなプログラミング言語でクラウドインフラストラクチャをコードで定義し、AWS CloudFormationを使用して展開するためのオープンソースのソフトウェア開発フレームワークです。
- AWS CodeBuildは、クラウド上の完全管理型の継続的インテグレーションサービスです。CodeBuildは、ソースコードをコンパイルし、テストを実行し、展開の準備が整ったパッケージを生成します。
- Amazon DynamoDBは、スケールに対応した高速かつ柔軟な非リレーショナルデータベースサービスです。
- AWS Lambdaは、サーバーのプロビジョニングや管理なしで、ほぼすべての種類のアプリケーションやバックエンドサービスのコードを実行できるイベント駆動型のコンピュートサービスです。
- Amazon Rekognitionは、事前トレーニングされたカスタマイズ可能なコンピュータビジョン(CV)機能を提供し、画像やビデオから情報と洞察を抽出します。 Amazon Rekognitionカスタムラベルを使用すると、ビジネスニーズに特化した画像内のオブジェクトやシーンを識別できます。
- AWS Step Functionsは、ビジュアルなワークフローを使用して、分散アプリケーションとマイクロサービスのコンポーネントを協調させることを容易にする完全管理型サービスです。
- AWS Systems Managerは、AWSおよびマルチクラウド環境上のリソースのセキュアなエンドツーエンド管理ソリューションです。Parameter Storeは、Systems Managerの機能の1つで、設定データ管理とシークレット管理のための安全で階層化されたストレージを提供します。
Purinaのソリューションは、API Gateway HTTP エンドポイントとして展開されており、ペットの属性を取得するためのリクエストをルーティングします。Rekognitionカスタムラベルを使用してペットの品種を予測します。MLモデルは、Purinaのデータベースから抽出したペットプロファイルでトレーニングされており、主要な品種ラベルが真のラベルとして想定されています。ペットの属性はDynamoDBに保存されます。LambdaはAPI Gateway、Amazon Rekognition、およびDynamoDBの間のペットの属性リクエストを処理するために使用されます。
このアーキテクチャは次のように実装されます:
- PetfinderアプリケーションはAPI Gateway経由でペットの属性を取得するためのリクエストをルーティングします。
- API GatewayはLambda関数を呼び出してペットの属性を取得します。
- Lambda関数はRekognitionカスタムラベル推論エンドポイントを呼び出してペットの品種を予測します。
- Lambda関数は予測されたペットの品種情報を使用してDynamoDBテーブルでペットの属性を検索します。ペットの属性を収集し、Petfinderアプリケーションに送信します。
次の図はソリューションのワークフローを示しています。
PurinaのPetfinderチームは、最小限のメンテナンスで展開できる自動化されたソリューションを求めています。これを提供するために、最新のデータでモデルをトレーニングし、ベンチマークセットでパフォーマンスをチェックし、改善された場合にはモデルを再展開するためのステップ関数を使用します。モデルの再トレーニングは、プロフィール情報を提出するユーザーが行った品種の修正の回数によってトリガされます。
モデルのトレーニング
画像を分析するためのカスタムモデルを開発するには、時間、専門知識、リソースが必要です。さらに、モデルが正確な決定を行うために十分なデータを提供するためには、数千や数万の手動ラベルが付けられた画像が必要となることがしばしばあります。このデータを生成するには数ヶ月かかり、機械学習に使用するためにそれをラベル付けするためには大きな努力が必要です。転移学習という技術は、事前トレーニングされたモデルのパラメータを借りることで、より高品質なモデルを生成するのに役立ち、少ない画像でモデルをトレーニングすることができます。
私たちの課題は、データが完全にラベル付けされていないことです:プロフィールデータを入力する人間はミスを com しまうことがあります。しかし、私たちはデータサンプルが十分に大きい場合、誤ラベルが十分に小さな割合であり、モデルのパフォーマンスに対して2%以上の影響を与えないことがわかりました。
MLワークフローとステートマシン
ステップ関数のステートマシンは、Amazon Rekognitionモデルの自動再トレーニングを支援するために開発されています。プロフィールの入力中にフィードバックが収集されます-画像から推論された品種がユーザーによって異なる品種に変更されるたびに、修正が記録されます。このステートマシンは、設定可能な閾値の修正数やその他のデータからトリガされます。
ステートマシンは、次の手順を実行してソリューションを作成します:
- Amazon Simple Storage Service (Amazon S3) の画像パスとラベルのリストを含むトレーニングおよびテストのマニフェストファイルを作成します。
- マニフェストファイルを使用してAmazon Rekognitionデータセットを作成します。
- データセットの作成後、Amazon Rekognitionモデルバージョンをトレーニングします。
- トレーニングが完了したら、モデルバージョンを開始します。
- モデルを評価し、パフォーマンスメトリクスを生成します。
- パフォーマンスメトリクスが満足のいくものであれば、Parameter Storeでモデルバージョンを更新します。
- 新しいモデルバージョンがLambda関数に伝播するのを待ちます(20分)、前のモデルを停止します。
モデルの評価
モデルを検証するために、データサンプルからランダムな20%のホールドアウトセットを使用します。検出する品種は設定可能なため、トレーニング中に固定のデータセットを使用しないで、統合テスト用に手動でラベル付けされた評価セットを使用します。手動でラベル付けされたセットとモデルの検出可能な品種の重複を使用してメトリクスを計算します。モデルの品種の検出精度が指定の閾値を超える場合、モデルはエンドポイントで使用されるように昇進します。
以下は、Rekognitionカスタムラベルによるペットの予測ワークフローのいくつかのスクリーンショットです。
AWS CDKを使用したデプロイ
AWS CDKを使用して、Step Functionsステートマシンと関連インフラ(Lambda関数、CodeBuildプロジェクト、Systems Managerパラメーターなど)をデプロイします。AWS CDKコードはCloudFormationテンプレートを合成し、ソリューションのすべてのインフラストラクチャをデプロイするために使用します。
Petfinderアプリケーションとの統合
Petfinderアプリケーションは、Amazon S3の画像へのパスと返される結果の数のフィールドを含むJSONペイロードを含むPOSTリクエストを使用して、API Gatewayエンドポイントを介して画像分類エンドポイントにアクセスします。
影響を受けるKPI
画像推論エンドポイントの追加コストの正当性を保証するために、Petfinderの価値を追加するエンドポイントがどれほどの価値を持つかを確認するために実験を行いました。エンドポイントの使用は、次の2つの主要な改善を提供します:
- ペットシェルターがペットプロフィールを作成する際の労力の軽減
- より完全なペットプロフィールによる検索の関連性の向上
効果とプロフィールの完全性を測定するためのメトリクスには、修正された自動入力フィールドの数、入力されたフィールドの総数、およびペットプロフィールのアップロード時間が含まれます。検索の関連性の向上は、採用率に関連する主要なパフォーマンス指標を計測することで間接的に推定されます。 Purinaによれば、ソリューションが稼働した後、Petfinderアプリケーションでのペットプロフィールの作成時間が7分から4分に短縮されました。それは大きな改善と時間の節約です。なぜなら、2022年には400万件のペットプロフィールがアップロードされました。
セキュリティ
アーキテクチャ図を介して流れるデータは、転送時および静止時に暗号化されます。これは AWS Well-Architected ベストプラクティス に準拠しています。 AWSのすべての関与では、セキュリティ専門家がソリューションを確認し、セキュアな実装が提供されるようにします。
結論
Rekognition Custom Labelsをベースにしたソリューションにより、Petfinderチームはペットシェルターのペットプロフィールの作成を加速し、シェルターのスタッフの管理負担を軽減することができます。 AWS CDKに基づいたデプロイでは、Step Functionsワークフローがトレーニングおよび展開プロセスを自動化します。 Rekognition Custom Labelsの使用を開始するには、 Amazon Rekognition Custom Labelsのはじめ方を参照してください。また、いくつかのStep Functionsの例やAWS CDKのはじめ方もご確認いただけます。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- 「大型言語モデル(LLM)のマスターに至る7つのステップ」
- AIテクノロジーを使ってあなたの牛を見守る
- Amazon PersonalizeとAmazon OpenSearch Serviceの統合により、検索結果をパーソナライズします
- 「Amazon PharmacyはAmazon SageMakerを使用して、LLMベースのチャットボットを作成する方法を学びましょう」
- 印象的なパフォーマンス:TensorRT-LLMを使用したRTXで最大4倍高速化された大規模言語モデル(LLM) for Windows
- 「このAIニュースレターはあなたが必要とするもの全てです #69」
- このAI論文では、「MotionDirector」という人工知能アプローチを提案しています:ビデオの動きと外観をカスタマイズするための手法