概要

Amazon Textract サービスは、文書の画像から印刷されたテキスト、手書き文字、構造化されたデータを抽出します。このサービスでは、AnalyzeID 機能で、現在米国の運転免許証や米国のパスポートを含む、身分証明書の画像から構造化されたテキストデータを読み取って抽出します。この機能により、お客様は文書処理を簡単に自動化および迅速化できます。

AnalyzeID は、身分証明書に表示されるテキストを操作して、明示的および黙示的なキーと値のペアを予測します。AnalyzeID では、キー (「発行日」) が文書に表示されてその値 (「03/18/2018」) と一致する場合の明示的なキーと値のペアと、それらの横に表示される明示的なキーがない場合がある黙示的なキーと値のペアを抽出できます (「María」はライセンスの中央に表示されますが、「ファーストネーム」としてマークされません)。このサービスは、キーと値のペアを 21 個の既知のキーからなる共通の分類法に正規化するため、お客様は ID タイプ間で情報を比較できます。例えば、このサービスは米国のパスポートから運転免許証の LIC 番号とパスポート番号を抽出し、両方に「文書 ID 番号」としてラベルを付けます。 AnalyzeID の精度を評価するために、私たちはこれらの予測を Ground Truth と比較しています。Ground Truth のキーと値は、人間のアノテーターによって修正されています。予測されたキーと値の各ペアは、予測が Ground Truth と一致する場合はヒットになり、それ以外の場合はミスになります。Precision、Recall、F1 などの品質メトリクスは、ヒット数とミス数によって異なります。

身分証明書は、管轄区域によって異なり (バージニア州の運転免許証はカリフォルニア州の免許証とは異なります)、また管轄区域内でも異なります。これは、各管轄区域が時間の経過とともに文書を進化させているためです。身分証明書の各バージョンは、含まれているキーと各キーに許可されている値によって異なる場合があります。認識を困難にする要因 (「交絡する変動」と呼ばれる) もあります。文書のデザインでは、テキストの裏側に複雑なグラフィックデザインを使用したり、テキストの上に光沢のあるプラスチックやその他のラミネートを施したりしている可能性があります。例えば、財布やポケットに入れて持ち運ぶと、書類が磨耗したり破れたりして、重要な情報が見えなくなる可能性があります。最後に、文書が薄暗かったり、遮蔽されていたり (画像化中に文書を持っている手の一部などにより)、画像化時に焦点が合っていなかったりする場合があります。AnalyzeID は、交絡する変動を無視して、これらの文書画像内のテキストを認識するように設計されています。

想定されるユースケースと制限

AnalyzeID は、米国の州が発行した運転免許証および米国政府が発行したパスポートに使用することを目的としています。準州の政府 (プエルトリコなど) が発行する書類や、グローバルエントリーカードや出生証明書などの他の形式の身分証明書での使用のためにはトレーニングされていません。AnalyzeID は、過去 15 年間 (2007 年) に発行された文書をサポートしています。これには、約 5 年ごとに行われる州レベルの設計更新を約 3 回繰り返すことが含まれます。このサポート期間では、有効期限が切れていないすべての書類が対象になります; 米国の運転免許証は最大 12 年、米国のパスポートは最大 10 年で期限切れになります。

AnalyzeID を使用すると、お客様が開発したさまざまなアプリケーションでテキスト抽出ステップが可能となります。これらのアプリケーションは通常、エンドユーザーがオンラインタスクを完了するのをサポートします。例えば、金融サービスアプリケーションでは、ユーザーが運転免許証の内容をスキャンできるようにすることで、入力作業やエラーを減らして新規ユーザーを登録できます。同様に、ヘルスケアアプリケーションでは、予約のスケジュールを立てる際に、ユーザーは自分の住所やその他のアカウント情報をより迅速に、より少ないエラーで確認できます。アプリケーションは主に、1/ 関連するキーと値のペア、2/ 使用する画像キャプチャプロセス、および 3/ 送信される画像の解像度によって大きく異なります。AnalyzeID をアプリケーションワークフローに組み込む場合、お客様は人間による監視の必要性を評価し、必要に応じて人間のレビュー担当者による AnalyzeID 出力のレビューをサポートする必要があります。

Textract AnalyzeID の設計

機械学習: AnalyzeID は ML と光学式文字認識 (OCR) テクノロジーを使用して構築されています。その仕組みは次のとおりです: AnalyzeID は、身分証明書の画像を入力として受け取ります。OCR モデルは文書内のテキストを識別します。2 つ目の機械学習モデルでは、文書画像全体と OCR 出力を処理して、フィールド名と内容をキーと値のペアとして返します。API 呼び出しの詳細については、デベロッパー用ドキュメントを参照してください。

パフォーマンスの期待: 交絡する変動は、お客様のアプリケーションによって異なります。つまり、アプリケーションによってパフォーマンスは異なります。2 つの異なる名前と住所の検証アプリケーション A と B を考えてみましょう。アプリケーション A では、建物のセキュリティエージェントは、訪問者の運転免許証の名前と住所を、現場を訪れることが予測される人の名前と住所と比較できます。アプリケーション B では、採用担当者はビデオ面接中に応募者から個人情報を収集できます。A では、建物のセキュリティエージェントはエンタープライズ ID 文書スキャナを使用して、明るく、焦点が合っていて、オクルージョンがないライセンス画像をキャプチャします。B では、インタビュー対象者は自分のウェブカメラを使用して免許証を持ったままその画像をキャプチャするため、画像のぼやけ、ぎらつき、オクルージョンのリスクが高まります。A と B は画像キャプチャデバイスとプロセスが異なるため、入力画像の品質が異なります。そのため、各アプリケーションが Textract を使用して完全にデプロイされていると仮定しても、エラー率が異なる可能性があります。

テスト主導の方法論: 複数のデータセットを使用してパフォーマンスを評価しています。パフォーマンスの完璧な全体像を提供する単一の評価データセットは ありません。これは、評価データセットが人口動態変数的構成 (定義されたグループの数とタイプ)、交絡する変動の量 (コンテンツの質、目的への適合)、使用可能なラベルのタイプと品質、およびその他の要因によって異なるためです。Textract のパフォーマンスは、身分証明書の画像を含む評価データセットでテストすることで測定します。データセットの全体的なパフォーマンスは、F1 スコア (F1) で表されます。F1 では、予測に含まれる正しい単語の割合 (Recall) と予測された正しい単語の割合 (Precision) のバランスをとります。F1 スコアは [0,1] の範囲に入ります。キーと値のペアの信頼性しきい値を変更すると、F1 スコアが変わります。データセット内のグループは、主要な属性 (管轄区域、姓の長さなど)、交絡変数 (グラフィックデザインのレイアウト、画像品質など)、またはその 2 つの組み合わせによって定義できます。さまざまな評価データセットは、これらの要因やその他の要因によって異なります。このため、F1 スコア (全体とグループの両方) はデータセットごとに異なります。この変動を考慮して、私たちの開発プロセスでは、複数の評価データセットを使用して AnalyzeID のパフォーマンスを調べ、AnalyzeID のパフォーマンスが最も低いグループの F1 を上げるための手段を取り、一連の評価データセットの改善に取り組み、その後反復処理を行います。

公平性とバイアス: 私たちの目標は、AnalyzeID が、ライセンスの管轄区域や文書に表されている人の人口動態変数的属性に関係なく、身分証明書からテキストフィールドを高精度で抽出することです。これを達成するために、上記の反復開発プロセスを使用します。このプロセスの一環として、さまざまな画像品質の条件のもとで、AnalyzeID が対象とするさまざまな管轄区域 (米国の州) とテンプレートをキャプチャするためのデータセットを構築します。私たちは、信頼できるキーと値のペアがある文書の画像のデータセットで定期的にテストを行っています。AnalyzeID は、管轄区域や人口動態変数的属性全体で優れたパフォーマンスを発揮することがわかりました。一例として、50 州の米国運転免許証の前面から構成された内部データセットでは、州間の最も低い F1 精度は 95% で、年齢、退役軍人ステータス、姓の長さによって定義される人口動態変数に基づくグループの最も低い F1 精度は 99% でした。結果は AnalyzeID に依存するだけでなく、お客様のワークフローと評価データセットにも依存するため、お客様自身のコンテンツで AnalyzeID をテストすることをお勧めします。

説明しやすさ: お客様は各テキストフィールドの信頼性スコアにアクセスできるため、それらを利用して信頼性しきい値の設定を行ったり、AnalyzeID の出力への理解を深めることができます。予測キーは、値の予測に関する洞察を提供します。

堅牢性: 多くの文書にわたるさまざまな種類の変動を捉える大規模なトレーニングデータセットを使用するなど、さまざまな手法を用いて堅牢性を最大化しています。AnalyzeID への理想的な入力には、影、ぎらつき、またはその他の障害物が比較的ない画像が含まれ、文書は画像フレーム内で垂直に配置されています。ただし、AnalyzeID モデルは、入力が理想的な条件と異なる場合でも回復力があるようにトレーニングされています。

プライバシーとセキュリティ: AnalyzeID はテキストをキャプチャして処理します。入力と出力がお客様間で共有されることはありません。  お客様は、AWS Organizations または当社が提供するその他のオプトアウトメカニズムを通じて、顧客コンテンツに関するトレーニングをオプトアウトできます。詳細については、AWS サービス規約のセクション 50.3 および AWS データプライバシー FAQ を参照してください。 サービス固有のプライバシーとセキュリティ情報については、Textract FAQ のデータプライバシーセクションと Amazon Textract セキュリティドキュメントを参照してください。

透明性: ユースケースに応じて、AnalyzeID をワークフローに組み込んでいるお客様は、ML の使用をアプリケーションの影響を受けるエンドユーザーやその他の個人に開示することを検討し、エンドユーザーがワークフローを改善するためのフィードバックを提供できるようにする必要があります。お客様は、ドキュメントでこの AI Service Card を参照することもできます。

ガバナンス: 私たちは、AWS AI サービスを責任ある方法で構築するための厳格な方法論を採用しています。これには、設計段階で責任ある AI を組み込むという逆算的な製品開発プロセス、責任ある AI サイエンスとデータの専任の専門家による設計コンサルティングと実装評価、日常的なテスト、お客様とのレビュー、ベストプラクティスの開発、普及、およびトレーニングが含まれます。

導入とパフォーマンスの最適化のベストプラクティス

AWS Responsible Use of Machine Learning ガイドで説明されているように、お客様は責任を持ってアプリケーションを構築し、運用することをお勧めします。これには、公平性とバイアス、堅牢性、説明可能性、プライバシーとセキュリティ、透明性、ガバナンスなどの重要な側面に対処するための責任ある AI プラクティスの実装が含まれます。
 
ワークフロー設計: パフォーマンスとは、テキスト抽出用の AnalyzeID を含むお客様が開発したアプリケーションを操作するエンドユーザーのエクスペリエンスとして定義しています。AnalyzeID を使用するアプリケーションのパフォーマンスは、(1) 画像のばらつき、(2) 信頼性しきい値設定、(3) 人間による監視、(4) ワークフローの一貫性、(5) パフォーマンスドリフトの定期的なテストなど、お客様のワークフローの設計によって異なります。
 
  1. 画像の変動: 理想的な画像は、影、ぎらつき、またはその他の障害物が比較的なく、文書が直角でキャプチャされ、画像フレーム内で垂直に配置されているものです。お客様は、適切なガイダンスを使用してエンドユーザーをサポートし、良好な画像を撮影できます。

  2. 信頼性しきい値設定: お客様は、AnalyzeID が生成するキーと値のペアに、そのペアに割り当てられた信頼性スコアに基づいてフィルターまたはしきい値を設定することでパフォーマンスを調整できます。Precision を高めるには、高いしきい値を選択します。Recall を高めるには、低いしきい値を選択します。適切なしきい値を設定するために、お客様は代表的な入力セットを収集し、それぞれのテキストフィールドにラベルを付け、ユーザーエクスペリエンスに満足するまでしきい値を上げたり下げたりすることができます。

  3. 人間による監視: お客様のアプリケーションワークフローに、個人の権利や重要なサービスへのアクセスに影響する決定など、高いリスクまたは機密性の高いユースケースが含まれる場合は、必要に応じて人間による確認をアプリケーションワークフローに組み込むことをお勧めします。AnalyzeID によるキーと値の自動抽出は、完全に手動のソリューションによって生じる労力を軽減し、身分証明書を人間が迅速に確認して評価できるようにするツールとして機能します。

  4. 一貫性: お客様は、許可されている入力画像の種類、および人間がどのように信頼性しきい値設定の使用と独自の判断を組み合わせて最終結果を決定するかについて、ポリシーを設定して実施する必要があります。これらのポリシーは、人口動態変数に基づくグループ全体で一貫している必要があります。入力画像または信頼性しきい値を一貫性なく変更すると、さまざまな人口動態変数に基づくグループに不公平な結果をもたらす可能性があります。

  5. パフォーマンスドリフト: お客様が AnalyzeID に送信する画像の種類が変更されたり、サービスが変更されたりすると、出力が異なる場合があります。これらの変更に対処するために、お客様は Textract のパフォーマンスを定期的に再テストし、必要に応じてワークフローの調整を検討する必要があります。

さらに詳しい情報

用語集

公平性とバイアスとは、AI システムがどのようにしてユーザーのサブポピュレーション (ジェンダー別、民族別など) に影響を与えるかを指します。

説明しやすさとは、 AI システムのアウトプットを理解して評価するメカニズムを持つことを指します。

堅牢性とは、確実に AI システムが動作することを保証するメカニズムを持つことを指します。

プライバシーとセキュリティとは、データが盗難や漏洩から保護されていることを指します。

ガバナンスとは、組織内で責任ある AI プラクティスを定義、実装、実施するためのプロセスを持つことを指します。

透明性とは、利害関係者がシステムの使用について情報に基づいた選択を行えるように、AI システムに関する情報を伝えることを指します。