Amazon Textract

機械学習を使って文書からテキスト、手書き文字、テーブル、フォームのキーバリューペアを自動抽出する文書解析サービス

概要

Amazon Textract は、スキャンされた文書、PDF、画像からテキストと構造化データを自動的に抽出する機械学習サービスです。単純な OCR (光学文字認識) を超え、テーブルの行列構造、フォームのラベルと値の対応関係、署名の検出、手書き文字の認識を行います。請求書や領収書に特化した AnalyzeExpense API、身分証明書に特化した AnalyzeID API、融資関連文書に特化した AnalyzeLending API など、業務文書に最適化された専用 API も提供しています。

OCR を超える構造化データ抽出の仕組み

従来の OCR はページ上のテキストを上から下、左から右に読み取るだけで、テーブルの行列関係やフォームのラベルと値の対応は認識できません。Textract はページのレイアウトを解析し、テキストブロック間の空間的な関係性を理解した上でデータを抽出します。DetectDocumentText API は純粋なテキスト抽出で、行 (LINE) と単語 (WORD) の階層構造で結果を返します。AnalyzeDocument API はテーブル (TABLE)、フォーム (FORMS)、レイアウト (LAYOUT)、署名 (SIGNATURES) の検出に対応し、テーブルではセルの行番号・列番号・結合情報まで構造化して返します。フォーム抽出では「氏名: 山田太郎」のようなキーバリューペアを自動的に対応付けます。信頼度スコア (Confidence) が各抽出結果に付与されるため、スコアが低い結果を人間のレビューに回すワークフローを構築できます。日本語の認識精度は英語に比べて低い傾向があり、特に手書きの日本語は認識率が大きく下がるため、事前にサンプル文書でテストすることが重要です。

非同期処理と大量文書パイプラインの設計

Textract には同期 API と非同期 API の 2 種類があります。同期 API は単一ページの画像 (JPEG/PNG) に対してリアルタイムで結果を返しますが、複数ページの PDF には対応していません (2026 年 8 月時点)。非同期 API (StartDocumentTextDetection / StartDocumentAnalysis) は S3 上の複数ページ PDF を処理でき、最大 3,000 ページまで対応します。処理完了は SNS トピックへの通知で検知し、GetDocumentTextDetection / GetDocumentAnalysis で結果を取得します。大量文書の処理パイプラインでは、S3 へのアップロードをトリガーに Lambda で Textract の非同期 API を呼び出し、SNS 通知を受けた別の Lambda で結果を取得・後処理する構成が標準です。Textract にはリージョンごとの同時処理数制限 (デフォルトで非同期ジョブ 25 件) があるため、大量文書を一度に投入する場合は SQS キューで流量制御する必要があります。抽出結果の後処理では、Amazon Comprehend と組み合わせて固有表現 (人名、組織名、日付、金額) を自動分類するパターンが実用的です。信頼度の低い抽出結果に人間のレビュー工程を挟む用途では Amazon Augmented AI (A2I) が定番でしたが、A2I は 2026 年 7 月 30 日に新規顧客向けの受付を終了しています (2026 年 8 月時点)。

業務文書特化 API と精度向上のテクニック

AnalyzeExpense API は請求書と領収書に特化しており、ベンダー名、請求日、合計金額、税額、明細行 (品目名、数量、単価、小計) を標準化されたフィールドとして抽出します。汎用の AnalyzeDocument API で同じ文書を処理するよりも、フィールドの認識精度と構造化の品質が大幅に向上します。AnalyzeID API は運転免許証やパスポートから、氏名、生年月日、住所、文書番号、有効期限を抽出します。KYC (本人確認) プロセスの自動化に直結する機能です。精度向上のテクニックとして、入力画像の品質が最も重要です。解像度は 150 DPI 以上、傾き補正済み、コントラストが十分な画像を入力すると認識精度が向上します。Textract のカスタムクエリ機能 (Queries) を使えば、「請求番号は何ですか」「支払期限はいつですか」のような自然言語の質問を投げて、文書から特定の情報をピンポイントで抽出することも可能です。料金はページ単位の従量課金で、DetectDocumentText が 1,000 ページあたり 1.50 USD、AnalyzeDocument (テーブル+フォーム) が 1,000 ページあたり 65 USD と、機能によって大きく異なります (2026 年 8 月時点)。

参考資料 (AWS 公式)

本ページの一次情報は AWS 公式サイトおよび公式ドキュメントです。最新の仕様 / 料金は次の公式ページで確認できます。

本ページと公式ドキュメントの記述が食い違う場合は、公式ドキュメントを正としてください。

共有するXB!