Amazon Textract でドキュメントからデータを自動抽出 - OCR、テーブル解析、フォーム認識
Textract によるドキュメントのテキスト抽出、テーブル構造の解析、フォームのキー・バリュー抽出を解説します。
Textract の概要
Textract はドキュメントからテキスト、テーブル、フォームデータを自動抽出する OCR サービスで、PDF は最大 3,000 ページ、画像は最大 10 MB に対応します。従来の OCR がテキストの位置と文字を認識するだけなのに対し、Textract はテーブルの行列構造やフォームのラベル・値の関係を理解します。Queries 機能で特定の質問に対する回答をドキュメントから抽出し、AnalyzeExpense で請求書の明細を構造化します。
テーブル解析と Queries
AnalyzeDocument API の Tables 機能は表の行と列を認識し、セルの内容を構造化データとして返します。結合セルやヘッダー行も正しく解析します。Forms 機能はフォームのラベル (「氏名」「住所」「電話番号」) と対応する値を自動的にペアリングします。Queries は自然言語の質問をドキュメントに投げかけ、「患者名は?」「合計金額は?」のような質問に対する回答を抽出します。AnalyzeExpense は領収書と請求書に特化し、ベンダー名、日付、合計金額、税額、明細行を自動分類します。
AnalyzeExpense と Lending
AnalyzeExpense API は請求書と領収書に特化し、ベンダー名、請求日、合計金額、明細行 (品目名、数量、単価) を構造化データとして抽出します。手書きの領収書や複数ページの請求書にも対応し、経費精算の自動化に活用できます。 AnalyzeLending API は住宅ローンなどの融資書類に特化し、申込書、収入証明、不動産鑑定書などのドキュメントタイプを自動分類した上で、各書類からフィールドを抽出します。非同期 API (StartDocumentAnalysis) で大量のドキュメントをバッチ処理し、結果を S3 に出力するパイプラインを構築できます。 A2I (Augmented AI) と統合して、信頼度スコアが低い抽出結果を人間のレビューに回すワークフローを実装します。 OCR の理論と実装を深く理解するには、専門書籍 (Amazon)が役立ちます。
Textract の料金最適化
Textract の料金は API の種類とページ数で課金されます。DetectDocumentText (テキスト抽出のみ) は 1,000 ページあたり約 1.50 ドル、AnalyzeDocument (テーブル・フォーム解析) は約 15 ドル、Queries は 1 クエリあたり約 0.015 ドルです。AnalyzeExpense は 1,000 ページあたり約 10 ドルです。テキスト抽出のみで十分な場合は DetectDocumentText を使い、テーブルやフォームの構造解析が必要な場合のみ AnalyzeDocument を使うことでコストを最適化します。ドキュメントの前処理で不要なページ (空白ページ、表紙) を除外し、処理ページ数を削減します。バッチ処理の非同期 API はリアルタイム API と同じ料金ですが、大量処理時のスロットリング回避に有効です。
まとめ
Textract はテキスト抽出に加え、テーブル構造とフォームのキー・バリューを理解する高度な OCR サービスです。Queries で特定の質問に対する回答をドキュメントから抽出し、AnalyzeExpense で請求書の明細を構造化します。AnalyzeLending で融資書類の自動分類と抽出を行い、A2I 統合で信頼度の低い結果を人間のレビューに回すワークフローを構築します。