翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Textract を使用してPDFファイルからコンテンツを自動的に抽出する
作成者: Tianxia Jia (AWS)
環境:本稼働 | テクノロジー: 機械学習と AI、分析、ビッグデータ | AWS サービス: Amazon S3、Amazon Textract、Amazon SageMaker |
[概要]
多くの組織は、ビジネスアプリケーションにアップロードされたPDFファイルから情報を抽出する必要があります。例えば、組織は、税務分析や医療請求処理のために、税務ファイルや医療PDFファイルから情報を正確に抽出する必要がある場合があります。
Amazon Web Services (AWS) クラウドでは、Amazon Textract はPDFファイルから情報 (印刷されたテキスト、フォーム、テーブルなど) を自動的に抽出し、元のファイルからの情報を含む JSON形式のPDFファイルを生成します。Amazon Textract は、 AWS マネジメントコンソールまたは APIコールを実装することで使用できます。プログラムAPI呼び出し
Amazon Textract がファイルを処理すると、ページ、テキストの行と単語、フォーム (キーと値のペア)、テーブルとセル、選択要素の Block
オブジェクトリストが作成されます。境界ボックス 、信頼区間、、IDsおよび 関係など、その他のオブジェクト情報も含まれます。Amazon Textract はコンテンツ情報を文字列として抽出します。データ値はダウンストリームアプリケーションでより簡単に使用できるため、正しく識別され変換されたデータ値が必要です。
このパターンでは、 step-by-stepAmazon Textract を使用してPDFファイルからコンテンツを自動的に抽出し、クリーン出力に処理するワークフローについて説明します。このパターンでは、テンプレートマッチング技術を使用して必要なフィールド、キー名、テーブルを正しく識別し、各データタイプに後処理による修正を適用します。このパターンを使用してさまざまなタイプのPDFファイルを処理し、このワークフローをスケールして自動化して、同じ形式のPDFファイルを処理できます。
前提条件と制限
前提条件
アクティブ AWS アカウント。
PDF ファイルを Amazon Textract で処理するためにJPEG形式に変換した後に保存する既存の Amazon Simple Storage Service (Amazon S3) バケット。S3 バケットの詳細については、Amazon S3 ドキュメントの「バケットの概要」を参照してください。
Textract_PostProcessing.ipynb
Jupyter Notebook (添付)、インストール、設定。Jupyter ノートブックの詳細については、Amazon SageMaker ドキュメントの「Jupyter ノートブックの作成」を参照してください。同じ形式を持つ既存のPDFファイル。
Python について理解していること。
機能制限
PDF ファイルは、品質が良く、明確に読み取れるものでなければなりません。ネイティブPDFファイルは推奨されますが、個々の単語がすべて明確であれば、PDF形式に変換されたスキャン済みドキュメントを使用できます。詳細については、AWSMachine LearningブログのPDF「Amazon Textract: Visuals によるドキュメントの前処理
」を参照してください。 マルチページファイルの場合、非同期オペレーションを使用するか、PDFファイルを 1 ページに分割して同期オペレーションを使用できます。この 2 つのオプションの詳細については、Amazon Textract ドキュメントの「Detecting and analyzing text in multipage documents」と「Detecting and analyzing text in single-page documents」を参照してください。
アーキテクチャ
このパターンのワークフローは、まずサンプルPDFファイル (初回実行 ) で Amazon Textract を実行し、次に最初の PDF (反復実行 ) と同じ形式のPDFファイルで実行します。次の図は、同じ形式のPDFファイルからコンテンツを自動的かつ繰り返し抽出する初回実行ワークフローと反復実行ワークフローの組み合わせを示しています。
この図は、このパターンの次のワークフローを示しています。
PDF ファイルをJPEG形式に変換し、S3 バケットに保存します。
Amazon Textract を呼び出しAPI、Amazon Textract レスポンスJSONファイルを解析します。
必須フィールドごとに正しい
KeyName:DataType
ペアを追加してJSONファイルを編集します。繰り返し実行ステージ用のTemplateJSON
ファイルを作成します。データタイプ (浮動小数点、整数、日付など) ごとに後処理補正関数を定義します。
最初のPDFファイルと同じ形式のPDFファイルを準備します。
Amazon Textract を呼び出しAPI、Amazon Textract レスポンスを解析しますJSON。
解析されたJSONファイルを
TemplateJSON
ファイルと一致させます。後処理による修正を実装します。
最終JSON出力ファイルには、各必須フィールドValue
に対して正しい KeyName
と があります。
ターゲットテクノロジースタック
Amazon SageMaker
Amazon S3
Amazon Textract
自動化とスケール
新しいPDFファイルが Amazon S3 に追加されると、Amazon Textract を開始する AWS Lambda 関数を使用して、繰り返し実行ワークフローを自動化できます。次に Amazon Textract が処理スクリプトを実行し、最終出力を保存場所に保存できます。詳細については、Lambda ドキュメントの Amazon S3 トリガーを使用して Lambda 関数を呼び出すを参照してください。
ツール
Amazon SageMaker は、ML モデルを迅速かつ簡単に構築してトレーニングし、本番環境対応のホスト環境に直接デプロイするのに役立つフルマネージド ML サービスです。
Amazon Simple Storage Service (Amazon S3) は、どのようなデータ量であっても、データを保存、保護、取得することを支援するクラウドベースのオブジェクトストレージサービスです。
Amazon Textract を使用すると、ドキュメントテキストの検出と分析をアプリケーションに簡単に追加できます。
エピック
タスク | 説明 | 必要なスキル |
---|---|---|
PDF ファイルを変換します。 | ファイルを 1 つのページに分割し、Amazon Textract 同期オペレーション () のJPEG形式に変換して、初回実行用にPDFファイルを準備します 注: マルチページPDFファイルには Amazon Textract 非同期オペレーション ( | データサイエンティスト/デベロッパー |
Amazon Textract レスポンスを解析しますJSON。 |
次のコードを使用して、レスポンスをフォームとテーブルJSONに解析します。
| データサイエンティスト/デベロッパー |
テンプレートJSONファイルを編集します。 |
このテンプレートは個々のPDFファイルタイプに使用されます。つまり、テンプレートは同じ形式のPDFファイルに再利用できます。 | データサイエンティスト/デベロッパー |
後処理補正関数を定義します。 |
次のコードを使用して、
| データサイエンティスト/デベロッパー |
タスク | 説明 | 必要なスキル |
---|---|---|
PDF ファイルを作成します。 | PDF ファイルを 1 ページに分割し、Amazon Textract 同期オペレーション () のJPEG形式に変換して準備します 注: マルチページPDFファイルには Amazon Textract 非同期オペレーション ( | データサイエンティスト/デベロッパー |
Amazon Textract を呼び出しますAPI。 | 次のコードAPIを使用して Amazon Textract を呼び出します。
| データサイエンティスト/デベロッパー |
Amazon Textract レスポンスを解析しますJSON。 | 次のコードを使用して、レスポンスをフォームとテーブルJSONに解析します。
| データサイエンティスト/デベロッパー |
テンプレートJSONファイルをロードし、解析された と照合しますJSON。 |
| データサイエンティスト/デベロッパー |
後処理修正。 | 次のコードを使用して、
| データサイエンティスト/デベロッパー |
関連リソース
添付ファイル
このドキュメントに関連する追加コンテンツにアクセスするには、次のファイルを解凍してください。「attachment.zip」