AWS AI Service Card には、サービスで想定されるユースケース、サービスによる機械学習 (ML) の使用方法、責任あるサービスの設計と使用における主な考慮事項が記載されています。Service Card は、AWS がお客様からのフィードバックを受け取り、サービスが開発プロセスを繰り返すにつれて進化します。AWS では、お客様が解決する必要のあるユースケースごとに、AI サービスのパフォーマンスをお客様自身のコンテンツで評価することを推奨しています。詳細については、AWS 責任ある機械学習の使用ガイドと最後にある参考資料を参照してください。また、ご利用予定のサービスの AWS 責任 AI ポリシーおよび AWS サービス利用規約を必ずご確認ください。
この Service Card は、2022 年 11 月 7 日現在の Rekognition 顔照合のリリースに適用されます。
概要
Amazon Rekognition face matching (顔照合) により、アプリケーションビルダーは 1 つの顔の画像と 2 つ目の顔の画像の類似性を測定できます。この AI Service Card には、CompareFaces と SearchFaces API を使用して、一般的な識別スタイルの写真やメディア (制約のない環境や自然環境で撮影された映画、フォトアルバム、「wild (自然の状態の)」画像など) の顔を責任を持って照合するための考慮事項が記載されています。通常、お客様はソース画像の顔とターゲット画像の顔を比較するために CompareFaces を使用し (1:1 照合)、ソース画像の顔とターゲット画像の顔コレクションを比較するために SearchFaces を使用します (1:N 照合)。Rekognition では、事前に作成された顔のコレクションは提供されません。お客様は、独自の顔コレクションを作成して入力する必要があります。この Card 全体を通して、Rekognition の CompareFaces API と SearchFaces API を指すために「顔照合」を使用します。
顔画像のペアは、両方の画像に同じ人物の顔が含まれている場合は「true match (真の合致)」と呼ばれ、それ以外の場合は「true non-match (真の非合致)」と呼ばれます。「ソース」画像と「ターゲット」画像の入力ペアを指定すると、Rekognition はソース画像内のソースとなる顔とターゲット画像内のターゲットとなる顔との類似性のスコアを返します。最小類似性スコアは 0 で、類似性が非常に小さいことを意味し、最大値は 100 で、類似性が非常に高いことを意味します。Rekognition 自体は、画像の 2 つの顔が真の合致か真の非合致かを独自に判断するわけではありません。CompareFaces や SearchFaces を呼び出すお客様のワークフローでは、自動ロジック (類似性しきい値を 0~100 に設定し、類似性スコアがしきい値を超える場合は真の一致を予測する)、人間の判断、またはその両方を使用して判断します。
人間の顔は、肌の色合いや形状など、物理的に異なります。ただし、1 人の個人が似ていない画像で表される可能性があり、逆に、さまざまな個人が非常に似ている画像で表される場合もあります。例えば、目の形だけが異なる 2 人の人が、同じサングラスをかけていれば同じように見えることがあります。これは、さまざまな要因 (「confounding variation (交絡する変動)」と呼ばれる) が組み合わさって、顔を表す画像ピクセルの位置と色が変わるためです。これらの交絡要因には、(1) 照明の方向、強度、波長の分布; (2) 頭の姿勢; (3) カメラの焦点と画像処理の欠陥; (4) ピクセル解像度; (5) 手、顔の毛、頭の毛、携帯電話、突き出した舌、スカーフ、眼鏡、帽子、宝石、またはその他の物体によるオクルージョン; (6) 表情 (表情が無いまたは目を見開くなど); および (7) 肌の色合いの変化 (例: メイク、フェイスペイント、日焼け、ニキビによる) などがあります。Rekognition の類似性スコアは、異なる個人の顔の画像では低く、同じ顔の画像では高くなるように設計されており、交絡する変動は無視されます。Rekognition は、ソース画像とターゲット画像で利用できる情報のみを使用して、人間の顔画像の類似性を評価します。
想定されるユースケースと制限
Rekognition の顔照合は、人間の顔を比較することのみを目的としています。漫画、アニメキャラクター、または人間以外の実体からの顔の認識はサポートされていません。また、ぼやけすぎたり粗すぎたりして人間が顔を認識できないような顔画像や、顔の大部分が髪、手、その他の物体で隠されている顔画像の使用もサポートされていません。さらに、AWS は犯罪捜査の一環として、警察による Rekognition::CompareFaces および Rekognition::SearchFaces API の使用を一時停止しています (詳細については、AWS サービス条件のセクション 50.9 を参照してください)。
Rekognition の顔照合により、行方不明の子供の識別、建物や会議用ホスピタリティスイートへのアクセス権の付与、オンラインでの本人確認、個人の写真ライブラリの整理など、さまざまなアプリケーションが可能になります。これらのアプリケーションは、関係する個人の数、各個人が利用できるさまざまな画像の数、予測される交絡する変動の量、誤合致と誤非合致の相対コスト、およびその他の要因によって異なります。これらのアプリケーションは、大きく分けて 2 つのユースケースに分けられます。
本人確認のユースケース: 本人確認アプリケーションでは、顔照合を使用して新規ユーザーをオンボーディングし、既存のユーザーにリソースへのアクセス権を付与します。このユースケースでは、政府発行の身分証明書 (パスポートや運転免許証など) の写真と、明るく不明瞭ではない顔の正面向きのポーズを促すリアルタイムの自撮り写真を使用することで、通常、交絡する変動を最小限に抑えることができます。これにより、ターゲット画像のコレクション内の各個人を少ない数の顔画像で表すことができ、コレクション内のさまざまな個人の数を増やすことができます (数百万人単位など)。このユースケースでは、特定のエンドユーザーがシステムを欺いてアクセスしようとしている可能性があります。そのためお客様は、例えば、Rekognition に送信されたソース画像とターゲット画像がお客様の期待を満たしているかどうかを手動で確認したり、高い類似性スコア (例えば、95) を照合に要求したりすることで、このリスクを軽減できる場合があります。
メディアのユースケース: メディアアプリケーションでは、顔照合を使用して、写真や動画中の人物を、既知の人物の中から識別します (休暇中の動画から家族を探す場合など)。このユースケースでは、同じ個人のソース画像とターゲット画像の間に大きな交絡する変動があるため、ターゲット画像のコレクションには、ユーザーあたりの画像数が多い (おそらく、その人の生涯の複数年にまたがる可能性がある)、より少ない数の個人が含まれる可能性があります。このユースケースでは、エンドユーザーがシステムを欺こうとするインセンティブは低いため、お客様は高度に自動化されたワークフローを選択し、交絡する変動が大きいことを考えると、合致の類似性スコアがより低い (例えば、80) ことを許可する場合があります。
Rekognition における顔照合の設計
機械学習: Rekognition の顔照合は、機械学習とコンピュータービジョン技術を使用して構築されています。その仕組みは次のとおりです: (1) 顔を含む入力画像の部分を探します。(2) 頭部を含む画像領域を抽出し、顔が「通常の」垂直位置になるように領域を揃えて、切り取った顔画像を出力します。(3) 切り取ったそれぞれの顔画像を「顔ベクトル」(厳密には、顔画像の数学的表現) に変換します。SearchFaces で検索されるコレクションは、顔ベクトルのセットであり、顔画像のセットではないことに注意してください。(4) ソース画像の顔ベクトルとターゲット画像の顔ベクトルを比較し、顔ベクトルに対するシステムの類似性スコアを返します。API 呼び出しの詳細については、デベロッパー用ドキュメントを参照してください。
パフォーマンスの期待: 個別の交絡する変動は、お客様のアプリケーションによって異なります。つまり、同じユースケースをサポートしていても、アプリケーションによってパフォーマンスは異なります。2 つの本人確認アプリケーション A と B を考えてみましょう。いずれの場合も、ユーザーは最初にパスポートスタイルの画像を使用して ID を登録し、その後、リアルタイムの自撮り写真を使用して本人確認を行います。アプリケーション A では、スマートフォンのカメラを使用して、明るく、ピントが合っていて、正面からの姿勢で、高解像度で、オクルージョンがない自撮り写真を撮影することで、スマートフォンにアクセスできます。アプリケーション B では、入口カメラを使用して、明るさが不十分で、ぼやけていて、解像度が低い自撮り写真を撮影することで、建物へアクセスできます。A と B では入力の種類が異なるため、各アプリケーションが Rekognition を使用して完全にデプロイされていると仮定しても、顔照合のエラー率は異なる可能性があります。
テスト主導の方法論: 複数のデータセットを使用してパフォーマンスを評価しています。パフォーマンスの完璧な全体像を提供する単一の評価データセットは ありません。これは、評価データセットが人口動体変数的構成 (定義されたグループの数とタイプ)、交絡する変動の量 (コンテンツの質、目的への適合)、使用可能なラベルのタイプと品質、およびその他の要因によって異なるためです。Rekognition のパフォーマンスは、同じ個人の画像のペア (合致ペア) と異なる個人の画像のペア (非合致ペア) を含む評価データセットでテストすることで測定します。類似性しきい値を選択し、Rekognition を使用して各ペアの類似性スコアを計算し、そのしきい値に基づいてそのペアが合致であるか非合致であるかを判断します。データセットの全体的なパフォーマンスは、真の合致率 (類似性がしきい値を上回る合致ペアの割合) と真の非合致率 (類似性スコアがしきい値を下回る非合致ペアの割合) の 2 つの数値で表されています。類似性しきい値を変更すると、真の合致率と真の非合致率が変わります。データセット内のグループは、人口動態変数的属性 (性別など)、交絡する変数 (顔の毛の有無など)、またはその 2 つの組み合わせによって定義できます。さまざまな評価データセットは、これらの要因やその他の要因によって異なります。このため、真の合致率と非合致率 (全体とグループの両方) はデータセットごとに異なります。この変動を考慮して、私たちの開発プロセスでは、複数の評価データセットを使用して Rekognition のパフォーマンスを調べ、Rekognition のパフォーマンスが最も低いグループの真の合致率や真の非合致率を上げるための手段を取り、一連の評価データセットの改善に取り組み、その後反復処理を行います。
公平性とバイアス: 私たちの目標は、Rekognition の顔照合がすべての人間の顔でうまく機能することです。これを達成するために、上記の反復開発プロセスを使用します。そのプロセスの一環として、広範囲の交絡変動の下で、さまざまな人間の顔の特徴や肌の色合いを捉えるデータセットを構築します。性別、年齢、肌の色合いなどの信頼できる人口動態的ラベルが付いた顔画像のデータセットで、さまざまなユースケースを定期的にテストしています。Rekognition は人口動態的属性全体で優れたパフォーマンスを発揮することがわかりました。一例として、責任ある AI を専門とする企業である Credo AI は、良好な照明で、ぼやけもオクルージョンもない被写体の高品質な画像を含む本人確認データセットを使用して、第三者による Rekognition の評価を実施しました。Credo AI によると、肌の色合いと性別によって定義される 6 つのユーザー属性グループで最も低い真の合致率は 99.94816% で、6 つのグループで最も低い真の非合致率は 99.99995% で、類似性しきい値は 95 に設定されていました。パフォーマンスの結果は Rekognition、お客様のワークフロー、評価データセットなどのさまざまな要因に依存するため、お客様独自のコンテンツを使用して Rekognition をさらにテストすることをお勧めします。
説明しやすさ: 所定のソース画像とターゲット画像のペアに関して、Rekognition から返された類似性スコアについて疑問がある場合は、Rekognition から返される境界ボックスと顔のランドマーク情報を使用して、顔画像を直接調べることをお勧めします。
堅牢性: 多くの個人にわたるさまざまな種類の変動を捉える大規模なトレーニングデータセットを使用するなど、さまざまな手法を用いて堅牢性を最大化しています。Rekognition は、異なる個人間の小さな違い (一卵性双生児など) に対して非常に高い感度を持つことと、交絡する変化 (頬骨を目立たせるためにメイクを施すなど) に対して非常に低い感度を持つことを同時には行えない。そのため、お客様はユースケースに適した真の合致率と真の非合致率に対する期待値を設定し、類似性しきい値の選択を含むワークフローのパフォーマンスをコンテンツでテストする必要があります。
プライバシーとセキュリティ: Rekognition の顔照合は、顧客入力画像、入力画像の顔ベクトル、および出力類似性スコアと出力メタデータの 3 種類のデータを処理します。顔ベクトルは、サービスによって返される出力に含まれることはありません。入力と出力がお客様間で共有されることはありません。お客様は、AWS Organizations または当社が提供するその他のオプトアウトメカニズムを通じて、顧客コンテンツに関するトレーニングをオプトアウトできます。詳細については、AWS サービス規約のセクション 50.3 および AWS データプライバシー FAQ を参照してください。 サービス固有のプライバシーとセキュリティ情報については、Rekognition FAQ のデータプライバシーセクションと Amazon Rekognition セキュリティドキュメントを参照してください。
透明性: ユースケースに応じて、Amazon Rekognition 顔照合 API をワークフローに組み込んでいるお客様は、機械学習や顔認識技術の使用をアプリケーションの影響を受けるエンドユーザーやその他の個人に開示することを検討し、エンドユーザーがワークフローを改善するためのフィードバックを提供できるようにする必要があります。お客様は、ドキュメントでこの AI Service Card を参照することもできます。
ガバナンス: 私たちは、AWS AI サービスを責任ある方法で構築するための厳格な方法論を採用しています。これには、設計段階で責任ある AI を組み込むという逆算的な製品開発プロセス、責任ある AI サイエンスとデータの専任の専門家による設計コンサルティングと実装評価、日常的なテスト、お客様とのレビュー、ベストプラクティスの開発、普及、およびトレーニングが含まれます。
導入とパフォーマンスの最適化のベストプラクティス
- 個人の変動: ターゲット画像の顔コレクションの中からソース画像の顔を検索する場合、ターゲット画像のセット内の異なる個人間での物理的な非類似性の度合いが高くなるほど、成功率が高くなります。例えば、一卵性双生児間の照合は、二卵性双生児または無関係な個人間の照合よりもかなり困難です。一般に、唯一の個人の数が多いターゲット画像のコレクションは、似ているように見える唯一の個人が 2 人いるというリスクを高めるので、照合についての最終決定を行う際には細心の注意が必要です。ワークフローでは、ソース画像に対して返される類似性スコアを解釈する際に、ターゲット画像のコレクション内における個人の類似性の可能性を考慮する必要があります。
- 交絡する変動: 元の画像と目的の画像のペアを選択する際は、ワークフローには、元の画像と目的の画像の間の変動 (照明条件の違いなど) を最小限にするための手順を含める必要があります。変動が大きい場合は、予測される変動 (姿勢、照明、年齢など) をカバーする複数の顔画像 (「オプション」) をターゲット画像の個人ごとに追加し、ソース画像の顔をターゲット画像の各オプションと比較することを検討してください。選択肢が 1 つしかないことが現実的である場合は、パスポートスタイルの、正面を向いた、オクルージョンがないヘッドショットの使用を検討してください。ワークフローでは、許容される入力画像に関するポリシーを確立し、定期的かつランダムに入力をサンプリングしてコンプライアンスを監視する必要があります。
- 類似性しきい値処理: アプリケーションに適切な類似性しきい値を設定することが重要です。そうしないと、ワークフローは一致がない場合に一致がある (誤合致) と結論付けたり、その逆 (誤非合致) となる可能性があります。誤合致のコストは、誤非合致のコストとは同じではない場合があります。たとえば、認証用の適切な類似性しきい値は、メディアの類似性しきい値よりもはるかに高い場合があります。適切な類似性しきい値を設定するには、お客様は代表的な入力ペアのセットを収集し、それぞれに合致または非合致とラベルを付け、満足するまで類似性しきい値を上げたり下げたりして試す必要があります。
- 人間による監視: お客様のアプリケーションワークフローに、個人の権利や重要なサービスへのアクセスに影響する決定など、高いリスクまたは機密性の高いユースケースが含まれる場合は、必要に応じて人間による確認をアプリケーションワークフローに組み込むことをお勧めします。顔照合システムは、完全に手動のソリューションによって生じる労力を軽減し、合致の可能性と非合致の可能性を人間が迅速に確認して評価できるようにするツールとして機能します。
- 一貫性: お客様は、許可されているソース画像とターゲット画像の種類、および人間がどのように類似性しきい値の使用と独自の判断を組み合わせるかについて、ポリシーを設定して実施する必要があります。これらのポリシーは、すべての人口統計グループ全体で一貫している必要があります。元の画像と目的の画像、または類似性しきい値を一貫性なく変更すると、さまざまな人口統計グループに不公平な結果をもたらす可能性があります。
- パフォーマンスドリフト: お客様が Rekognition に送信する画像の種類が変更されたり、サービスが変更されたりすると、出力が異なる場合があります。これらの変更に対処するために、お客様は Rekognition のパフォーマンスを定期的に再テストし、必要に応じてワークフローを調整することを検討する必要があります。
さらに詳しい情報
- サービスドキュメントについては、Rekognition、CompareFaces、SearchFaces を参照してください。
- 認証ワークフロー設計の例については、Amazon Rekognition を使用した ID 検証を参照してください。
- ワークフローを最適化する方法については、AWS カスタマーサポート、AWS プロフェッショナルサービス、Amazon SageMaker Ground Truth Plus、Amazon Augmented AI を参照してください。
- AWS AI サービスカードに関する質問やフィードバックがある場合は、こちらのフォームにご記入ください。
用語集
公平性とバイアスとは、AI システムがどのようにしてユーザーのサブポピュレーション (ジェンダー別、民族別など) に影響を与えるかを指します。
説明しやすさとは、AI システムのアウトプットを理解して評価するメカニズムを持つことを指します。
堅牢性とは、確実に AI システムが動作することを保証するメカニズムを持つことを指します。
プライバシーとセキュリティとは、データが盗難や漏洩から保護されていることを指します。
ガバナンスとは、組織内で責任ある AI プラクティスを定義、実装、実施するためのプロセスを持つことを指します。
透明性とは、利害関係者がシステムの使用について情報に基づいた選択を行えるように、AI システムに関する情報を伝えることを指します。