メインコンテンツへスキップ
ABBYY Vantage には、構造化ドキュメントを処理するための機械学習モードがあります。例えば、各ドキュメントのインスタンスで field の位置が同じである種類のドキュメントです。こうしたドキュメントには、アンケート、申請書、確定申告書などがあります。構造化ドキュメントの中には、field やその位置にわずかな違いがある複数のバリアントが存在する場合もあります。

サンプル画像

IRS Form 1040 - 2020 IRS Form 1040 - 2019 2020年版と2019年版のIRS Form 1040の2種類。

構造化ドキュメント用 Skill の作成

構造化ドキュメントを処理する Skill は、Vantage と Advanced Designer の両方で作成できます。ただし、そのような Skill を編集するには Advanced Designer を使用する必要があります。 Vantage では、その Skill の Fixed-form documents トグルをオンにすると、構造化ドキュメントを処理する Skill を作成できます。あわせて、空白のフォームをいくつかアップロードしてラベル付けする必要があります。
Note: 複数のバリアントを持つ構造化ドキュメントを処理する Skill の作成手順については、Setting up a Document skill for processing structured documentsを参照してください。
Vantage で作成した Skill は Advanced Designer に表示されます。ドキュメント処理フローには、構造化ドキュメントの処理に特化した Forms アクティビティが含まれます。
Note: Fixed-form documents トグルを有効にしなかった場合、Skill のドキュメント処理フローは Fast Learning アクティビティのみで構成されます。
Advanced Designer では、構造化ドキュメントの処理を他の Vantage テクノロジーと組み合わせる必要がある場合に、構造化ドキュメント用の Skill を作成および編集できます。この場合、Forms アクティビティは、Advanced Designer で作成・設定された他のアクティビティと併用する必要があります。
Note: ドキュメント処理フローに、他のアクティビティと併用する Forms アクティビティが含まれる場合、または複数の Forms アクティビティが含まれる場合、Vantage での編集は Skill のプロパティ変更のみに限定され、学習は利用できません。より高度な編集には Advanced Designer を使用してください。

非構造要素や混在構造を含むフォームからのデータ抽出

構造化されたドキュメントでも、ドキュメント上の任意の位置に配置されたバーコードやスタンプなど、検出が必要な非構造要素を含む場合があります。別の例として、混在ドキュメントがあります。ドキュメントの一部は構造化され、別の部分は可変長のテーブル(たとえば、行数が変動するテーブル)になっているものです。こうしたドキュメントを処理するには、まず Forms アクティビティを使用し、その後に非構造要素を処理するアクティビティを使用します。以下の手順では、構造化された field を処理するために Forms アクティビティを使用し、バーコードを検出するために Extraction Rules アクティビティを使用します。

Document Skill を作成する手順

  1. Advanced Designer を開きます。スタートページで Create Document Skill をクリックし、新しい Skill を作成します。
  2. Activities タブに移動し、Forms アクティビティをドキュメント処理フローに追加します。
  3. Activity Editor をクリックします。Blank Form タブで、ドキュメントの各バリアントごとに空のフォームサンプルを1つアップロードします(10種類を超えるバリアントのアップロードは推奨しません)。データを抽出する必要がある field にラベルを付けます。ラベリングのガイドラインについては「Labeling documents」を参照してください。
  4. Train Activity をクリックします。
  5. Test Set タブをクリックし、記入済みのテストドキュメントをアップロードします。各ドキュメントで、すべての field に正しくラベルが付いていることを確認します。Test Activity をクリックします。処理が完了したら、結果を確認します。
  6. Activities タブに戻り、Extraction Rules アクティビティをドキュメント処理フローに追加します。
  7. Activity Editor をクリックし、Extraction Rules アクティビティを設定します。
  8. Test Skill Using Selected Documents をクリックします。処理が完了したら結果を確認します。結果に問題がなければ Skill を公開します。満足できない場合はラベリングを調整し、再度トレーニングとテストを実行します。

テーブルと繰り返しグループの扱い

構造化ドキュメントを処理する際、テーブルや繰り返しグループについて、テーブル行数またはグループのインスタンス数の最大値が事前に分かっており、かつテーブルまたはグループの境界が固定されている場合は、Vantage で処理できます。フォームのあらゆるバリエーションで発生し得るすべての行にラベル付けする必要があります。
注: 処理結果にはデータのある行のみが表示されます。空行は無視されます。
グループ内の行数またはインスタンス数が事前に不明な場合は、別の Vantage のテクノロジーを使用する必要があります。
注: 現在は Text の値を持つテーブルのみが処理可能です。テーブルにチェックボックスやバーコードの列がある場合は、代わりに繰り返しグループを使用してください。

1つのフローでフォームと非構造化ドキュメントからデータを抽出する

場合によっては、情報がフォームと非構造化ドキュメントの両方で収集されることがあります。たとえば、アンケートの回答は、印刷フォームで提出される場合もあれば、自由記述の非構造化ドキュメントとして提出される場合もあります。このように種類が混在するドキュメントを処理するには、フォームを処理する Forms アクティビティと、非構造化ドキュメントを処理する Fast Learning または Extraction Rules アクティビティを組み合わせて使用します。続いて、Classify アクティビティを適用して、フォームと非構造化ドキュメントを分類します。

Document skill を作成する手順

  1. Advanced Designer を開きます。スタートページで Create Document Skill をクリックし、新しい Skill を作成します。
  2. Activities タブに移動し、ドキュメント処理フローに Forms アクティビティを追加します。
  3. Activity Editor をクリックします。Blank Form タブで、空のサンプルフォームをアップロードし、抽出するデータの field にラベルを付けます。ラベリングのガイドラインは「Labeling documents」を参照してください。
  4. Train Activity をクリックします。
  5. Test Set タブをクリックし、記入済みのテストドキュメントをアップロードします。各ドキュメントで、すべての field に正しくラベルが付いていることを確認します。Test Activity をクリックします。処理が完了したら結果を確認します。
  6. Activities タブに移動し、ドキュメント処理フローに Fast Learning アクティビティを追加します。
  7. Activity Editor を開き、アクティビティを構成して学習させます。
  8. Activities タブに移動し、ドキュメント処理フローの先頭に Classify アクティビティを追加します。
  9. Activity Editor をクリックし、Classify アクティビティを設定します。各ドキュメントのバリアントごとにクラスを作成し、ドキュメントにクラスを割り当てて、アクティビティを学習させます。
  10. Activities タブに戻り、IF アクティビティを追加してドキュメント処理フローの条件分岐を設定します。このアクティビティを Forms および Fast Learning の各アクティビティに接続します。
  11. Test Skill Using Selected Documents をクリックします。処理が完了したら結果を確認します。結果に問題がなければ Skill を公開します。満足できない場合は、ラベリングを調整してアクティビティを再学習させます。