OCRモデルの理解

OCRモデルの理解

お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

Info
AI モデルは大幅に刷新され、名称が AI Modeler に変更されました。これにより、アプリ全体で使用できるモデルを構築・トレーニング・公開できます。今回の刷新以前にモデルを作成している場合は、詳細についてこちらをご覧ください。

Notes
メモ:
AI コールは、Creator アプリケーション内で AI モデルが実行されるたびに消費されます。OCR フィールドの場合:
  1. 元のフィールドに入力値が入力されると、OCR フィールドに出力を生成するための AI コールがトリガーされます。この AI コールは、利用中のAI コール上限数およびCreator プランから差し引かれます。
  2. 出力の生成前後を問わず、元のフィールドが変更されると、更新された入力を使用してモデルが再度実行されます。このとき追加の AI コールがトリガーされ、このコールもAI コール上限数にカウントされます。
残りの AI コール上限数は、請求セクションから確認できます。

Optical Character Recognition (OCR) モデルは、デジタル画像や PDF から印刷文字と手書き文字の両方を認識して抽出するテキスト認識モデルです。機械学習を利用して、デジタル画像またはPDFをスキャンし、必要な情報だけを抽出するようにモデルをトレーニングできます。これは、大量の非構造化データから構造化データを処理・取得したい場合に特に有用です。こうして得られた構造化データは、必要に応じてビジネスで保存・処理できるため、データ入力プロセスの簡素化と自動化に役立ちます。たとえば、構造化データはメールの送信日時であり、非構造化データはメール本文全体にあたります。

Creator では 2 種類の OCR モデルをサポートしています。ビジネスニーズに合わせてカスタムモデルを構築することも、一般的なビジネスシナリオ向けにすぐにアプリケーションへ導入できる、事前構築済み(すぐに使える)モデルを選択することもできます。
必要な値だけを識別・抽出するようにトレーニングできるカスタム OCR モデルを構築できます。カスタム OCR モデルでは、業界最先端の複数のテキスト認識技術を組み合わせてテキストを識別し、ハイライト表示します。モデルによって抽出可能と判断されたテキストは、すべて未タグの値としてハイライト表示されます。その後、画像から値を抽出したいフィールドを追加してタグ付けできます。モデルは、画像内で検出された必要なテキストを抽出・処理するようにトレーニングできます。
Info
  1. - OCR モデルは、フォントの種類に関係なく画像からテキストを抽出できます。
  2. - モデルは印刷文字と手書き文字の両方を検出できますが、印刷文字の使用を推奨します。手書き文字のばらつきが大きい場合、モデルが必要なテキストを正しく処理できない可能性があります。





OCR モデルの前提条件

ビジネスニーズに合わせてカスタム OCR モデルを構築・トレーニングできます。加えて、アプリケーションに直接導入できるすぐに使える OCR モデルも利用できます。

特定の入力画像セットからテキストを抽出したいとします。この場合は、カスタム OCR モデルの利用が適しています。一方、入力画像から検出されたテキストをすべて抽出したいケースもあります。この場合には、すぐに使える OCR モデルを利用できます。これは、カスタムモデルとすぐに使える OCR モデルのどちらでも、PDF からテキストを抽出する場合にも当てはまります。

必要なスキル

  1. 管理者は OCR モデルを作成・利用できますが、一般ユーザーは管理者が作成したモデルを利用することのみ可能です。
  2. モデルのトレーニングに使用するデータセットを決定できるよう、ビジネス要件を十分に把握している必要があります。
  3. Creator はローコードプラットフォームであるため、予測モデルを作成・利用する際に、ユーザーや管理者が事前にコーディングや機械学習(ML)のスキルを持っている必要はありません。
Notes
メモ : トレーニングデータの条件を満たさない PDF や画像はアップロードされません。

必要なデータ


画像ベースの OCR モデル
  1. トレーニングデータとして、レイアウトが類似した画像を少なくとも 5 枚用意してアップロードする必要があります。
  2. 抽出値を正しくタグ付けする場合は、レイアウトが異なる画像を使用することもできます。
PDF ベースの OCR モデル
  1. カスタム OCR モデルの場合、必要なテキストを抽出するには、最大 2 ページまでの同一レイアウトを含む PDF を少なくとも 5 件用意する必要があります。

必要な料金プラン

  1. AI モデルは、すべての有料プランで利用できます。詳細は料金ページをご覧ください。

必要な Creator のバージョン

  1. カスタム AI モデルを作成するには、Zoho Creator 6(C6)を使用する必要があります。一方、すぐに使える AI モデルは C6 と C5 の両方で利用できます。


Creator を使用して ジルカー Invoice Processing アプリを構築したとします。Invoice Details というフォームがあり、請求書の詳細とそのデジタルコピーを追加しています。請求書から、請求日、請求書番号、支払期日、請求先住所などの特定のデータを抽出する必要があります。これは、紙の請求書をもとに手作業で支払い処理や会計処理を行うことでも対応できますが、複数のレコードを扱う場合は、抽出プロセスを自動化することで多くの時間と手作業を削減できます。


上記のケースで OCR モデルを使用する手順は次のとおりです。
  1. モデルを作成する:
    1. 抽出する値を特定し、その値を保存するためのフィールドとフィールドタイプを選択します。この例では、Invoice numberInvoice dateDue dateBilling address が抽出対象の値になります。
    2. 同一または異なるレイアウトの十分なトレーニングデータをアップロードし、抽出が必要な値に対応するフィールドをタグ付けします。この例では、請求書の画像またはPDFをアップロードする必要があります。
  2. モデルをトレーニングする
  3. モデルをデプロイする:
    1. モデルへの入力を含む画像フィールドまたはファイルアップロードフィールドをフォームで選択します。
    2. 画像フィールドから抽出された値を保存するため、先ほど定義したフィールドを追加します。この例では、Invoice numberInvoice dateDue dateBilling address が抽出された値を保存するフィールドになります(上記 GIF を参照)。
    3. 本番環境で画像またはPDFをアップロードして、必要な値を取得します。この場合の入力は、Invoice の画像または PDF になります。

OCR モデルのフロー



モデルの設定

トレーニングデータの追加

トレーニングデータとは、モデルがデータパターンを分析し、解釈を行い、テキスト認識に役立つ結論を導き出すために使用する初期データセットです。OCR モデルをトレーニングするには、レイアウトが同一または異なる十分な数の画像や PDF を収集する必要があります。次に、収集した画像や作成した PDF から抽出したい値を特定します。トレーニングデータが確定したら、OCR モデルにフィールドを追加できます。
Info
  1. モデルの結果は常に正確とは限りません。これは、あらゆる AI に共通する特性です。
  2. モデルの結果は動的です。同じ入力であっても、学習状況に応じて異なる結果が返される場合があります。つまり、モデルを継続的に再トレーニングすることで、モデルも継続的に学習し続けることを意味します。
Creator では、フォームフィールドにユーザーが入力した値が保存されます。同様に、抽出したい値も、それぞれ対応するフィールドに表示されます。フィールドを追加することでフィールドの定義を作成し、モデルを Creator アプリケーションに実装した際に、そのアプリケーションのフォームにこれらのフィールドが表示されるようにします。必要に応じて、あらかじめ定義されたフィールドを選択/選択解除できます。トレーニングデータから抽出する値を特定したら、その値に対応するフィールドとデータ型を追加する必要があります。
Info
サポートされているデータ型は、テキスト数値日付です。

トレーニングデータを追加する

これまでに収集した画像や作成した PDF をここで使用します。画像や PDF には、請求書、小切手、インボイス、パスポート、領収書などの写真や文書を使用できます。これらの文書内のテキストは手書きでも印字でもかまいませんが、印字されたテキストのほうが推奨されます。
Notes
メモ : 手書きと印字の両方の画像や PDF をアップロードできます。モデルが期待どおりに値を特定して抽出できるよう、すべての画像で抽出値を正しくタグ付けしてください。

フィールドをタグ付けする

Info
追加したすべてのフィールドのタグ付けが完了したら、必要に応じてここから直接新しいフィールドを追加できます。タグ付けフィールドのドロップダウンで[新しいフィールドを追加]をクリックするだけです。このオプションは、1 モデルあたりのフィールド数が 10 未満の場合にのみ表示されます。
必要なトレーニングデータをアップロードすると、それぞれのテキストがハイライト表示されます。次に、アップロードしたすべての画像/PDF で、先ほど追加したフィールドごとに値をタグ付けする必要があります。ここでのタグ付けとは、追加したフィールドを、抽出して表示すべき値に対応付けることを指します。画像/PDF の各ページで、該当する値をドラッグして選択することで値をタグ付けできます。たとえば、データ型が数値の請求書番号フィールドを追加した場合は、画像内の請求書番号の値をタグ付けする必要があります。これは、OCR モデルに対し、入力データから抽出すべきフィールド値がどれであるかを認識させるためです。


ガイドライン

形式

  1. 画像でサポートされている形式は、JPEGPNGBMPTIF です。

サイズ

  1. アップロードする各画像の最大サイズは5 MBまでです。
  2. モデル全体のサイズは150 MBを超えないようにしてください。
  3. アップロードする各 PDF ファイルの最大サイズは5 MBまでです。
  4. カスタム OCR モデルの場合、1 PDF あたり同一レイアウトのページは最大2ページまでが必要です。

言語 (印字および手書きテキスト)

  1. 現在サポートされているのは日本語のみです。

その他

  • 鮮明な画像をアップロードしてください。
  • 異なるレイアウトの画像をアップロードする場合は、抽出値を正しくタグ付けしてください。
  • 正確に認識・抽出するには、同一レイアウトの画像を最低 5 枚アップロードする必要があります。
  • トレーニングを成功させるには、各フィールドを、対応する値に対して最低 5 枚の画像でタグ付けする必要があります。
  • 1 モデルにつき、最低 1 つのフィールド(フィールドタイプ付き)、最大 10 個のフィールド(それぞれフィールドタイプ付き)まで抽出できます。
  • フォームに OCR フィールドを追加するには、そのフォームに 画像 フィールドをソースフィールドとして用意しておく必要があります。ソースフィールド とは、モデルがテキストを特定して抽出するための入力画像をアップロードするフィールドを指します。フォームにサポートされているフィールドタイプが存在しない場合は、OCR モデルをデプロイする前に、まずそのフィールドを作成する必要があります。

モデルサマリー

トレーニングデータを追加したら、モデルの詳細 として、モデル名モデルタイプトレーニングデータ、追加された画像数などを確認できます。変更が必要な場合は、戻って修正できます。問題なければ、そのままモデルのトレーニングに進みます。

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

アプリケーションで OCR モデルを実際に使用する前に、期待どおりに動作するようトレーニングする必要があります。トレーニングデータを選択して確認したら、[トレーニング]をクリックしてモデルをトレーニングします。

Notes
メモ : トレーニングには時間がかかる場合があります。同じページを開いたまま待機することも、ページを閉じて後で戻ることもできます。トレーニング時間は、モデルサイズとキュー内のトレーニングモデル数によって異なります。

モデルの詳細を表示・管理する

モデルのトレーニングが完了すると、モデルの詳細、バージョン、および(存在する場合は)デプロイの詳細を確認できます。モデルはアプリに公開・デプロイする準備が整った状態になります。


モデルは次の方法で管理できます:

  • 再トレーニング - 新しいデータは常に生成されるため、定期的にモデルを再トレーニングすることを推奨します。これにより、OCRモデルが値を抽出する際の信頼性と精度が向上します。
  • モデルを再トレーニングするには、Re-train model をクリックします。
  • 各再トレーニングの完了後に、新しいバージョンのモデルが作成されます。必要に応じて、切り替え を行い、異なるバージョンを利用できます。
  • 現在使用中のバージョンを削除する場合は、その前に別のバージョンに切り替えてから削除してください。
  • モデルのトレーニングが失敗した場合、「Model training has failed!」と表示されます。その間は、直前まで動作していたモデルが予測に使用されます。
Notes
メモ:
  1. 再トレーニングオプションは、フォーム項目を通じてトレーニングデータを追加した場合にのみ利用できます。これは、アプリケーションに新しいレコードが継続的に追加されるタイミングで、その都度モデルをトレーニングできるためです。
  2. CSVファイルでデータを追加する場合は、モデルを削除して新しいファイルをアップロードし、再度モデルをトレーニングできます。
  • 名前の変更 - 必要に応じて、モデル名を変更できます。
  • 削除 - データの不整合や誤ったデータの追加が理由でモデルを削除したい場合は、削除 オプションを使用します。

モデルをテストする

Info
モデルをアプリケーションに公開・デプロイする前にテストすることを推奨します(必須ではありません)。
トレーニング後、公開する前にモデルをテストして、モデルの動作やトレーニング結果が十分かどうかを確認できます。テストデータをアップロードすると、テスト完了後に抽出された値が結果として表示されます。
  1. 期待どおりの結果が得られない場合は、モデルを再トレーニングするか、モデルの詳細を編集してから再度トレーニングできます。再トレーニングとは、編集を行わずに、継続的に学習しているモデルを再度トレーニングすることを指します。
  2. モデルをテストする際にアップロードできる画像は、1回につき1枚のみです。
  3. OCRモデルのガイドラインについては、こちらをクリックしてください。

OCRモデルのパフォーマンスを向上させる

モデルのトレーニング、テスト、評価が完了したら、パフォーマンス向上のためにモデルを調整できます。ここでは、モデルのパフォーマンス向上に役立ついくつかのポイントを紹介します。
  1. 画像を収集したりPDFを作成したりする際は、文字がきちんと整列しているものを使用し、モデルがテキストを認識しやすいようにしてください。
  2. 高品質な画像やPDFを収集・アップロードしてください。元のトレーニングデータの品質が高いほど、文字と背景を分離しやすくなり、OCRモデルの精度も向上します。
  3. テキストと背景のコントラストを高めて、出力結果をより見やすくすることもできます。
  4. 印刷されたテキストに対して使用した場合、OCRエンジンは高い精度を発揮します。
  5. 画像やPDFページが逆さまになっていないことを確認してください。画像の向きが正しく、テキストが斜めではなく水平に表示されている必要があります。

モデルを公開する

モデルをトレーニングしたら、公開してユーザーが利用できるようにし、予測を開始できます。操作方法はこちら
Info
モデルを公開できるのは1回のみです。ユーザーにモデルを利用させたくない場合は、モデルを削除してください。
環境が有効なCreatorアプリケーションでOCRモデルを使用するには、そのアプリケーションの少なくとも1つのバージョンが本番環境に公開されている必要があります。モデルをアプリケーションにデプロイした後は、モデルがどのステージにデプロイされているかを確認するために、環境の異なるステージを切り替えて絞り込むことができます。操作方法はこちら

モデルを利用する

モデルを公開したら、デプロイ先となるアプリケーションとフォームを選択する必要があります。選択したフォームにリダイレクトされ、先ほど定義した項目がフォームビルダーに一覧表示されます。必要に応じて項目を選択または選択解除できます。選択解除した項目は、そのフォームには追加されません。たとえば、同じOCRモデルを2つのフォームで使用する場合、両方のフォームで同じ項目セットが必要とは限らないため、不要な項目は選択解除できます。
フォームには新しいOCR項目が追加され、任意の画像をアップロードできます。OCRモデルが画像を解析し、定義済みの項目に抽出された値を表示します。
Notes
メモ: トレーニング済みモデルを選択する前に、どこからも参照されていない画像またはファイルアップロード項目(他の場所で使用されていない項目)をフォームに追加しておいてください。

サンプルデータで始める

OCRをすぐに使い始められるように、Creatorアプリケーションですぐに利用できるサンプルデータを提供しています。ページをスクロールして添付ファイルをダウンロードしてください。