arrow_back

Document AI Workbench を使用したカスタム ドキュメント抽出

ログイン 参加
700 以上のラボとコースにアクセス

Document AI Workbench を使用したカスタム ドキュメント抽出

ラボ 1時間 universal_currency_alt クレジット: 5 show_chart 中級
info このラボでは、学習をサポートする AI ツールが組み込まれている場合があります。
700 以上のラボとコースにアクセス

GSP1142

Google Cloud セルフペース ラボのロゴ

概要

Document AI は、ドキュメント、メール、請求書、フォームなどの非構造化データを簡単に理解、分析、利用できるようにするドキュメント理解ソリューションです。この API は、コンテンツ分類、エンティティ抽出、高度な検索機能などを利用して、データに構造を与えます。Document AI Workbench では、独自のトレーニング データを使用して完全にカスタマイズされたモデルを作成し、より高い精度のドキュメント処理を実現できます。

お使いのドキュメントに特化し、データを用いてトレーニングと評価を行うカスタム ドキュメント エクストラクタ(CDE)を作成できます。このプロセッサは、ドキュメントからエンティティを識別して抽出します。このトレーニング済みプロセッサを追加のドキュメントに使用できます。通常は、教育機関の入学願書など、同じタイプのドキュメントに対して CDE を使用します。

このラボでは、Document AI Workbench を使用して W-2(米国税務フォーム)ドキュメントを処理するカスタム ドキュメント エクストラクタを作成してトレーニングする方法について説明します。ドキュメントの準備作業はほとんど完了しているので、CDE 作成の他のメカニズムに集中できます。

目標

このラボでは、次のタスクの実行方法について学びます。

  • Document AI Workbench を使用してカスタム ドキュメント エクストラクタを作成する
  • プロセッサ スキーマを定義して作成する
  • ドキュメントをインポートする
  • Document AI Workbench でドキュメントに手動で注釈を付ける
  • 生成 AI を使用してドキュメントに自動的にラベルを付ける
  • プロセッサのトレーニング ジョブを開始する

設定と要件

[ラボを開始] ボタンをクリックする前に

こちらの説明をお読みください。ラボには時間制限があり、一時停止することはできません。タイマーは、Google Cloud のリソースを利用できる時間を示しており、[ラボを開始] をクリックするとスタートします。

このハンズオンラボでは、シミュレーションやデモ環境ではなく実際のクラウド環境を使って、ラボのアクティビティを行います。そのため、ラボの受講中に Google Cloud にログインおよびアクセスするための、新しい一時的な認証情報が提供されます。

このラボを完了するためには、下記が必要です。

  • 標準的なインターネット ブラウザ(Chrome を推奨)
注: このラボの実行には、シークレット モード(推奨)またはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウント間の競合を防ぎ、個人アカウントに追加料金が発生しないようにすることができます。
  • ラボを完了するための時間(開始後は一時停止できません)
注: このラボでは、受講者アカウントのみを使用してください。別の Google Cloud アカウントを使用すると、そのアカウントに料金が発生する可能性があります。

ラボを開始して Google Cloud コンソールにログインする方法

  1. [ラボを開始] ボタンをクリックします。ラボの料金をお支払いいただく必要がある場合は、表示されるダイアログでお支払い方法を選択してください。 左側の [ラボの詳細] ペインには、以下が表示されます。

    • [Google Cloud コンソールを開く] ボタン
    • 残り時間
    • このラボで使用する必要がある一時的な認証情報
    • このラボを行うために必要なその他の情報(ある場合)
  2. [Google Cloud コンソールを開く] をクリックします(Chrome ブラウザを使用している場合は、右クリックして [シークレット ウィンドウで開く] を選択します)。

    ラボでリソースがスピンアップし、別のタブで [ログイン] ページが表示されます。

    ヒント: タブをそれぞれ別のウィンドウで開き、並べて表示しておきましょう。

    注: [アカウントの選択] ダイアログが表示されたら、[別のアカウントを使用] をクリックします。
  3. 必要に応じて、下のユーザー名をコピーして、[ログイン] ダイアログに貼り付けます。

    {{{user_0.username | "Username"}}}

    [ラボの詳細] ペインでもユーザー名を確認できます。

  4. [次へ] をクリックします。

  5. 以下のパスワードをコピーして、[ようこそ] ダイアログに貼り付けます。

    {{{user_0.password | "Password"}}}

    [ラボの詳細] ペインでもパスワードを確認できます。

  6. [次へ] をクリックします。

    重要: ラボで提供された認証情報を使用する必要があります。Google Cloud アカウントの認証情報は使用しないでください。 注: このラボでご自身の Google Cloud アカウントを使用すると、追加料金が発生する場合があります。
  7. その後次のように進みます。

    • 利用規約に同意してください。
    • 一時的なアカウントなので、復元オプションや 2 要素認証プロセスは設定しないでください。
    • 無料トライアルには登録しないでください。

その後、このタブで Google Cloud コンソールが開きます。

注: Google Cloud のプロダクトやサービスにアクセスするには、ナビゲーション メニューをクリックするか、[検索] フィールドにサービス名またはプロダクト名を入力します。 ナビゲーション メニュー アイコンと検索フィールド

Cloud Shell をアクティブにする

Cloud Shell は、開発ツールと一緒に読み込まれる仮想マシンです。5 GB の永続ホーム ディレクトリが用意されており、Google Cloud で稼働します。Cloud Shell を使用すると、コマンドラインで Google Cloud リソースにアクセスできます。

  1. Google Cloud コンソールの上部にある「Cloud Shell をアクティブにする」アイコン 「Cloud Shell をアクティブにする」アイコン をクリックします。

  2. ウィンドウで次の操作を行います。

    • Cloud Shell 情報ウィンドウで操作を進めます。
    • Cloud Shell が認証情報を使用して Google Cloud API を呼び出すことを承認します。

接続した時点で認証が完了しており、プロジェクトに各自の Project_ID が設定されます。出力には、このセッションの PROJECT_ID を宣言する次の行が含まれています。

Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}

gcloud は Google Cloud のコマンドライン ツールです。このツールは、Cloud Shell にプリインストールされており、タブ補完がサポートされています。

  1. (省略可)次のコマンドを使用すると、有効なアカウント名を一覧表示できます。
gcloud auth list
  1. [承認] をクリックします。

出力:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (省略可)次のコマンドを使用すると、プロジェクト ID を一覧表示できます。
gcloud config list project

出力:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} 注: Google Cloud における gcloud ドキュメントの全文については、gcloud CLI の概要ガイドをご覧ください。

タスク 1. Document AI API を有効にする

Document AI を使用するには、API を有効にする必要があります。

  1. Cloud Shell で次のコマンドを実行して、Document AI の API を有効にします。
gcloud services enable documentai.googleapis.com

次のように表示されます。

Operation "operations/..." finished successfully.
  1. 次のコマンドを実行して、Document AI 用の Python クライアント ライブラリをインストールします。
pip3 install --upgrade google-cloud-documentai

次のように表示されます。

... Installing collected packages: google-cloud-documentai Successfully installed google-cloud-documentai-2.15.0

これで、Document AI API を使用する準備ができました。

Document AI API を有効にする

タスク 2. プロセッサを作成する

まず、このラボで使用するカスタム ドキュメント エクストラクタのプロセッサを作成します。

このチュートリアルでは最初に、Document AI Platform で使用する Form Parser プロセッサのインスタンスを作成する必要があります。

  1. ナビゲーション メニューで [すべてのプロダクトを表示] を選択します。[AI] で [Document AI] を選択します。

Document AI の概要が表示されているコンソール画面

  1. [カスタム プロセッサを作成] をクリックします。

  2. [カスタム エクストラクタ] ボックス内で、[プロセッサを作成] をクリックします。

  3. 名前を「lab-custom-extractor」にして、リージョンの一覧から [US(米国)] を選択します。

  4. [作成] をクリックして、プロセッサを作成します。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。

プロセッサを作成する

タスク 3. プロセッサ フィールドを定義する

作成したプロセッサの [プロセッサの概要] ページが表示されます。

カスタム ドキュメント抽出の概要ページ

プロセッサにドキュメントの抽出とラベル付けの開始をさせるフィールドを指定できます。

  1. [開始] タブをクリックします。[フィールド] メニューが表示されます。

  2. [新しいフィールドを作成] をクリックします。

  3. フィールドの名前を入力します。[データ型] と [オカレンス] を選択し、[作成] をクリックします。スキーマの作成と編集の詳細な手順については、プロセッサ スキーマを定義するをご覧ください。

  4. プロセッサ スキーマ用に次のラベルをそれぞれ作成します。

名前 データ型 オカレンス
control_number 番号 オプションの複数回
employees_social_security_number 番号 必須の複数回
employer_identification_number 番号 必須の複数回
employers_name_address_and_zip_code 住所 必須の複数回
federal_income_tax_withheld 金額 必須の複数回
social_security_tax_withheld 金額 必須の複数回
social_security_wages 金額 必須の複数回
wages_tips_other_compensation 金額 必須の複数回

プロセッサ スキーマでは、その他の種類のラベル(チェックボックスや表形式エンティティなど)を作成して使用することもできます。たとえば、W-2 フォームには、スキーマにも追加できる [Statutory employee]、[Retirement plan]、[Third party sick pay] のチェックボックスが含まれています。

さまざまなフィールドのラベルを作成、管理する

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。 ラベルを作成する

タスク 4. サンプル ドキュメントをアップロードする

次に、サンプルの W-2 PDF をアップロードしてラベルを付けます。

  1. [サンプル ドキュメントをアップロード] をクリックします。

  2. サイドバーで、[Google Cloud Storage からドキュメントをインポートする] をクリックします。

  3. この例では、このバケット名を [ソースのパス] に入力します。これは 1 つのドキュメントに直接リンクしています。

cloud-samples-data/documentai/Custom/W2/PDF/W2_XL_input_clean_2950.pdf
  1. [インポート] をクリックします。

ラベル付けコンソールにリダイレクトされます。

タスク 5. ドキュメントにラベルを付ける

ドキュメント内のテキストを選択してラベルを適用するプロセスを「アノテーション」と呼びます。

  1. ラベル付けコンソールには、多くのラベルがすでに入力されています。

サンプル ドキュメントで生成されたラベル

注: 結果はサンプル画像と若干異なる場合があります。
  1. 提案されたラベルを使用するには、サイドパネルの各ラベルにポインタを合わせ、チェックマークを選択してラベルが正しいことを確認します。値がドキュメントのテキストと一致しない場合は、編集できます。

  2. この例では、ドキュメントの下部にある値は自動的に識別されなかったため、手動でラベルを付ける必要があります。

  3. デフォルトで [境界ボックス] ツールを使用するか、複数行値の場合は [テキスト選択] ツールを使用して、コンテンツを選択し、ラベルを適用します。

注: [テキスト選択] ツールはすべてのテキスト値に対して機能するわけではないため、必要に応じて [境界ボックス] を使用します。[境界ボックス] ツールを使用して、チェックボックスなどのテキスト以外のフィールドを選択することもできます。
  1. この例では、境界ボックスツールで wages_tips_other_compensation の値が選択され、そのラベルが適用されています。

境界ボックスツールを使用して賃金を選択する

  1. 検出されたテキスト値を確認して、ドキュメント内の正しいテキストが反映されていることを確認します。

完了すると、ラベル付きの W-2 ドキュメントは次のように表示されます。

ラベル付き W-2 ドキュメント

  1. 必要に応じて、[新しいフィールドを作成] をクリックして、このページからスキーマに新しいフィールドを追加できます。

  2. ドキュメントのアノテーションが完成したら、[ラベル付きとしてマーク] をクリックします。

[開始] タブにリダイレクトされます。

タスク 6. 基盤モデルを使用してプロセッサ バージョンをビルドする

1 つのドキュメントにラベルを付けたら、事前トレーニング済みの基盤モデルを使用してプロセッサ バージョンを作成し、エンティティを抽出できます。

  1. [ビルド] タブをクリックします。

[ビルド] タブをクリックする

  1. [基盤モデルを呼び出す] で [新しいバージョンを作成] をクリックします。

  2. プロセッサ バージョンの名前(w2-foundation-model など)を入力します。

  3. [作成] をクリックします。作成には数分かかります。

注: プロセッサ バージョンを作成した後で、作成したフィールドを削除することはできません。不要になった場合は、[フィールド] ページで無効にできます。
  1. 省略可: [デプロイと使用] タブをクリックします。このページで、利用可能なプロセッサ バージョンと新しいバージョンのデプロイ ステータスを確認できます。

このバージョンは後ほどラボでテストし、評価します。

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。

基盤モデルを使用してプロセッサ バージョンをビルドする

タスク 7. 生成 AI を使用してドキュメントに自動的にラベルを付ける

基盤モデルは、さまざまなドキュメント タイプのフィールドを正確に抽出できますが、追加のトレーニング データを提供して、特定のドキュメント構造に対するモデルの精度を向上させることもできます。

Document AI Workbench は、定義したラベル名と以前のアノテーションを使用して、自動ラベル付けで素早く簡単にドキュメントを大規模にラベル付けすることができます。

  1. [ビルド] ページに移動します。

  2. [ドキュメントをインポート] をクリックします。

  3. サイドバーで、[Google Cloud Storage からドキュメントをインポートする] をクリックします。

  4. このバケット名を [ソースのパス] に入力します。これには、ラベルのない W-2 PDF ファイルが含まれています。

cloud-samples-data/documentai/Custom/W2/AutoLabel
  1. [データ分割] リストから [自動分割] を選択します。これにより、トレーニング セットが 80%、テストセットが 20% になるようにドキュメントが自動的に分割されます。

  2. [自動ラベル付け] セクションで、[自動ラベル付けを使用したインポート] のチェックボックスをオンにします。

  3. 作成した基盤モデル プロセッサのバージョンを選択して、ドキュメントのラベル付けを行います。

  4. [インポート] をクリックして、ドキュメントがインポートされるのを待ちます。このページを離れて、後で戻ってくることもできます。

  5. 自動でラベル付けされたドキュメントを、トレーニングやテストに使用する前に、確認する必要があります。[ラベル付けを開始] をクリックして、自動的にラベル付けされたドキュメントを表示します。

  6. 提案されたラベルを使用するには、各アノテーションにポインタを合わせて、チェックマークをクリックしてラベルが正しいことを確認します。値がドキュメントのテキストと一致しない場合は、編集できます。

  7. ドキュメントのアノテーションが完成したら、[ラベル付きとしてマーク] をクリックします。

  8. 自動的にラベル付けされたドキュメントごとに繰り返します。このチュートリアルでは、自動ラベル付けに失敗したドキュメントはスキップできます。

タスク 8. 事前にラベル付けされたトレーニング ドキュメントをインポートする

このラボでは、あらかじめラベル付けされたデータが用意されています。独自のプロジェクトで作業する場合は、データのラベル付けの方法を決定する必要があります。詳しくは、ラベル付けの方法をご覧ください。一般に、トレーニング データが多くなるほど、精度が高くなります。

  1. [ビルド] ページに移動します。

  2. [ドキュメントをインポート] をクリックします。

  3. サイドバーで、[Google Cloud Storage からドキュメントをインポートする] をクリックします。

  4. [ソースのパス] に次のパスを入力します。このバケットには、事前にラベル付けされたドキュメントが Document JSON 形式で含まれています。

cloud-samples-data/documentai/Custom/W2/JSON-2
  1. [データ分割] リストから [自動分割] を選択します。これにより、トレーニング セットが 80%、テストセットが 20% になるようにドキュメントが自動的に分割されます。[自動ラベル付けを使用したインポート] をオフのままにします。

  2. [インポート] をクリックします。インポートには数分かかります。

  3. [ビルド] ページから [データセットの管理] コンソールにアクセスし、データセット内のすべてのドキュメントとラベルを表示および編集できます。

タスク 9. プロセッサをトレーニングする

トレーニング データとテストデータが十分にそろったところで、次にプロセッサをトレーニングできます。トレーニングには数時間かかる場合があるため、トレーニングを開始する前に、適切なデータとラベルがプロセッサに設定されていることを確認してください。

  1. [カスタムモデルのトレーニング] で [新しいバージョンを作成] をクリックします。

    [新しいバージョンを作成] をクリックできない場合は、[要件の詳細を見る] をクリックしてデータセットの要件を確認します。

  2. [バージョン名] フィールドに、このプロセッサ バージョンの名前(w2-custom-model など)を入力します。

  3. (省略可)[ラベルの統計データを表示] をクリックして、ドキュメント ラベルに関する情報を確認します。これにより、対応範囲を判断できます。[閉じる] をクリックしてトレーニングの設定に戻ります。

  4. [モデル トレーニング方法] で、[モデルベース] を選択します。

  5. [トレーニングを開始] をクリックします。

  6. (省略可)[デプロイと使用] タブをクリックします。このページで、利用可能なプロセッサ バージョンと新しいバージョンのトレーニング ステータスを確認できます。

カスタム プロセッサのトレーニング ステータスを表示する

[進行状況を確認] をクリックして、目標に沿って進んでいることを確認します。

モデルをトレーニングする

これで、最初のカスタム Document AI プロセッサのトレーニングが開始されました。トレーニング ジョブには数時間かかるため、このラボはここで終了します。モデル バージョンをデプロイしてテストする方法について詳しくは、ドキュメントの次のセクションをご覧ください。

お疲れさまでした

このラボでは、Document AI を使用してカスタム ドキュメント抽出プロセッサを作成し、データセットをインポートして、サンプル ドキュメントにラベルを付けました。専用プロセッサと同じように、このプロセッサを使ってこの形式のドキュメントを解析することができます。また、このプロセッサを使用して自動ラベル付けで新しいドキュメントにラベルを付けたり、Document AI Workbench を使用してトレーニング データとトレーニング ジョブを管理したりすることもできます。

次のステップと詳細情報

Document AI と Python クライアント ライブラリの詳細については、以下のリソースをご覧ください。

Google Cloud トレーニングと認定資格

Google Cloud トレーニングと認定資格を通して、Google Cloud 技術を最大限に活用できるようになります。必要な技術スキルとベスト プラクティスについて取り扱うクラスでは、学習を継続的に進めることができます。トレーニングは基礎レベルから上級レベルまであり、オンデマンド、ライブ、バーチャル参加など、多忙なスケジュールにも対応できるオプションが用意されています。認定資格を取得することで、Google Cloud テクノロジーに関するスキルと知識を証明できます。

マニュアルの最終更新日: 2025 年 3 月 17 日

ラボの最終テスト日: 2025 年 3 月 17 日

Copyright 2025 Google LLC. All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。

始める前に

  1. ラボでは、Google Cloud プロジェクトとリソースを一定の時間利用します
  2. ラボには時間制限があり、一時停止機能はありません。ラボを終了した場合は、最初からやり直す必要があります。
  3. 画面左上の [ラボを開始] をクリックして開始します

シークレット ブラウジングを使用する

  1. ラボで使用するユーザー名パスワードをコピーします
  2. プライベート モードで [コンソールを開く] をクリックします

コンソールにログインする

    ラボの認証情報を使用して
  1. ログインします。他の認証情報を使用すると、エラーが発生したり、料金が発生したりする可能性があります。
  2. 利用規約に同意し、再設定用のリソースページをスキップします
  3. ラボを終了する場合や最初からやり直す場合を除き、[ラボを終了] はクリックしないでください。クリックすると、作業内容がクリアされ、プロジェクトが削除されます

このコンテンツは現在ご利用いただけません

利用可能になりましたら、メールでお知らせいたします

ありがとうございます。

利用可能になりましたら、メールでご連絡いたします

1 回に 1 つのラボ

既存のラボをすべて終了して、このラボを開始することを確認してください

シークレット ブラウジングを使用してラボを実行する

このラボの実行には、シークレット モードまたはシークレット ブラウジング ウィンドウを使用してください。これにより、個人アカウントと受講者アカウントの競合を防ぎ、個人アカウントに追加料金が発生することを防ぎます。