Amazon Textract のアイコン

Amazon Textract

文書や画像からテキスト、表、フォームデータを自動抽出する機械学習サービス

何ができるか

Amazon Textract は、スキャンした文書、PDF、画像からテキスト、手書き文字、表、フォームのキーバリューペアを自動的に抽出する機械学習サービスです。従来の OCR (光学文字認識) とは異なり、文書のレイアウトや構造を理解した上でデータを抽出するため、表のセル構造やフォームの項目名と値の対応関係を正確に認識します。請求書、領収書、身分証明書、医療記録など、さまざまな種類の文書に対応しています。

どのような場面で使うか

請求書や領収書の自動データ入力、契約書からの重要条項の抽出、身分証明書の本人確認処理、医療記録のデジタル化、税務書類の自動処理、保険金請求書の情報抽出、銀行の口座開設書類の処理、不動産契約書の分析など、紙の文書をデジタルデータに変換するあらゆる業務で活用されています。 この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。

身近な例え

優秀なデータ入力担当者に例えるとわかりやすいでしょう。紙の書類を見て、必要な情報を正確にシステムに入力してくれる担当者がいれば便利ですが、大量の書類を処理するには多くの人手と時間がかかります。Textract はこの作業を自動化し、何千枚もの書類を短時間で正確に処理できるデジタルな担当者のようなものです。

Textract とは

Amazon Textract は、2019 年に一般提供が開始された AWS の文書解析サービスです。従来の OCR ツールはテキストの認識に特化していましたが、Textract は機械学習を活用して文書の構造そのものを理解します。表の行列構造、フォームのラベルと入力値の対応、チェックボックスの状態など、人間が文書を読むときと同じように文脈を把握してデータを抽出します。事前のテンプレート設定やルール定義は不要で、さまざまな形式の文書に対して汎用的に動作します。

抽出機能の種類

Textract には複数の抽出機能があります。テキスト検出 (DetectDocumentText) は文書内のすべてのテキストを行単位で抽出します。文書分析 (AnalyzeDocument) はテキストに加えて、表構造とフォームのキーバリューペアを認識します。経費分析 (AnalyzeExpense) は請求書や領収書に特化し、ベンダー名、日付、合計金額、明細行などを構造化データとして抽出します。身分証明書分析 (AnalyzeID) は運転免許証やパスポートから氏名、生年月日、住所などの情報を自動抽出します。

非同期処理と大量文書の処理

Textract は同期 API と非同期 API の 2 つの呼び出し方式を提供しています。同期 API は単一ページの文書をリアルタイムで処理する場合に適しており、数秒で結果が返されます。非同期 API は複数ページの PDF や大量の文書をバッチ処理する場合に使用し、SNS 通知で処理完了を受け取ります。S3 に格納された文書を直接処理できるため、文書のアップロードから抽出、後続処理までのパイプラインを Lambda や Step Functions と組み合わせて自動化できます。信頼度スコアが付与されるため、低信頼度の結果を人間がレビューするワークフローも構築可能です。

Azure・オンプレミスとの比較

Azure の対応サービス Azure Form Recognizer
オンプレミスでの対応手段 ABBYY FineReader、Tesseract OCR

AWS の優位点

  • 事前のテンプレート定義やルール設定なしで、表構造やフォームのキーバリューペアを自動認識でき、多様な文書形式に対して汎用的にデータ抽出を実行できる
  • 請求書・領収書に特化した AnalyzeExpense API により、ベンダー名、日付、金額、明細行などの経費情報を構造化データとして高精度に抽出できる
  • 抽出結果に信頼度スコアが付与されるため、低信頼度の結果のみを人間がレビューするヒューマンインザループのワークフローを効率的に構築できる

注意点

  • 手書き文字の認識精度は印刷文字より低くなる傾向があるため、手書き文書を処理する場合は信頼度スコアに基づく人間レビューのワークフローを組み込むこと
  • 非同期 API の処理結果は 7 日間保持された後に自動削除されるため、結果の永続化が必要な場合は S3 や DynamoDB への保存処理を実装すること

さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。