> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 検証オペレーターのフィードバックに基づくNLPモデルの学習

> 検証オペレーターのフィードバックを使用してNLPモデルを再学習します。学習ステージの追加、学習バッチ設定の構成、NLP学習統計のエクスポートを行います。

データ抽出の品質は、オペレーターによるNLPモデルの追加学習によって向上できます。プログラムが特定のfieldを検出できなかったり、あるfieldを別のfieldと取り違えたりした場合、検証オペレーターは正しいfieldを指定してNLPモデルを再学習できます。すると、プログラムは再学習済みのモデルを使用して、より高精度にデータを抽出できるようになります。

<Note>
  追加学習は、[Document DefinitionsにロードされたNLPモデル](/ja/flexi-capture/nlp-loading)では使用できません。
</Note>

検証中にNLPモデルの学習を開始する方法は2つあります。次のいずれかを実行できます。

* 検証ステージの後に学習ステージを追加します。学習は、学習バッチに対して指定された条件が満たされたときに開始されます。ワークフローステージの設定の詳細については、[Workflow setup](/ja/flexi-capture/project-settings/workflow-project-settings)を参照してください。
* 文書を手動で学習ステージに送信します。これを行うには、作業バッチ内の文書を右クリックし、ショートカットメニューでTrainを選択します。

一般的な学習手順は次のとおりです。

* 学習が開始されると、ABBYY FlexiCaptureは学習バッチの一覧に汎用の学習バッチを自動的に作成します (まだ存在しない場合) 。特定のDocument Definitionに関連するすべての文書が、バリアントに関係なくこのバッチにコピーされます。
* 各文書には、For trainingまたはFor testingのいずれかのステータスが割り当てられます。
* For trainingとマークされた文書に対して学習が実行されます。その結果、新しいNLPモデルが作成されます。
* 次に、学習中に作成された新しいモデルが、For testingとマークされた文書を使用してテストされます。
* 新しいモデルの全体的な性能が既存のモデル以上であれば、既存のモデルは新しいモデルに置き換えられます。そうでない場合、新しいモデルは却下されます。

文書処理中に、同じfieldセットを含んでいても、文書によってfieldの位置が大きく異なることが判明する場合があります。このような文書の認識精度を向上させるには、文書バリアントごとに個別の学習バッチを作成してください。

**特定のベンダーまたはバリアント向けのフィールド抽出学習バッチの作成**

特定のベンダーからの文書、または特定のバリアントに属する文書を学習させるには、新しいバッチを作成する必要があります。次の手順に従ってください。

1. Project Setup Stationで、NLPモデルを含むプロジェクトを開きます。NLPモデルの設定の詳細については、[Creating NLP models](/ja/flexi-capture/nlp-new)を参照してください。
2. **Fields Training >** Open フィールド抽出 Training Batchesを選択して、フィールド抽出 Training Batchesを開きます。別の方法として、**Ctrl** + **Alt** + **B** のキーの組み合わせを使用するか、ショートカットメニューでフィールド抽出 Training Batches <img src="https://mintcdn.com/abbyy/IFr-A2MDVJd80FDs/images/flexi-capture/DocVariantsButton.png?fit=max&auto=format&n=IFr-A2MDVJd80FDs&q=85&s=83762cc174be930546e05af50a27f2be" alt="" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="23" height="23" data-path="images/flexi-capture/DocVariantsButton.png" /> を選択することもできます。
3. **File >** New Batchを選択して、新しいバッチを作成します。別の方法として、**Ctrl** + **N** のキーの組み合わせを使用することもできます。適切なDocument Definitionとバリアントを選択し、ショートカットメニューで **NLP Batch** オプションを選択します。
4. 文書を追加し、認識を実行してセクションの順序を編集した後、ショートカットメニューでTrainを選択して学習を開始します。別の方法として、**Ctrl** + **F7** のキーの組み合わせを使用するか、ツールバーの **Train Batch** <img src="https://mintcdn.com/abbyy/mpS3pcxC_lkohQUS/images/flexi-capture/NLP_TrainBatch.png?fit=max&auto=format&n=mpS3pcxC_lkohQUS&q=85&s=4712c51f4670724aa7008e8b3ef6476e" alt="" style={{display:"inline-block",verticalAlign:"middle",margin:0}} width="23" height="24" data-path="images/flexi-capture/NLP_TrainBatch.png" /> ボタンをクリックすることもできます。

学習済みNLPモデルの品質は、学習バッチ内の文書数とそのマークアップの品質に依存します。次の点に注意してください。

* Document Definitionで定義されているすべてのfieldを、学習文書内でマークアップする必要があります。
* 各学習バッチには100〜500件の文書を含めることをお勧めします。この件数があれば、学習プロセスを遅くすることなく、プログラムがNLPモデルに最適なパラメーターを選択できます。

オペレーターのフィードバックを学習に使用すると、新しい文書は学習バッチとバリアントバッチの両方に追加されます。

* 既存の学習バッチがあるバリアントについては、その特定のバッチ用に作成されたNLPモデルが使用されます。
* その他すべてのバリアントについては、汎用学習バッチ用に作成されたNLPモデルが使用されます。

同じソースから、すでに学習バッチに含まれているドキュメントと同一のドキュメントが追加されると、新しいドキュメントで古いドキュメントが置き換えられます。これは、学習タスクの[バックグラウンドタスクログ](/ja/flexi-capture/operator-work/bg-task-manager)にも記録されます。プログラムは、ドキュメントが既存のドキュメントのコピーかどうかを判断するために、ドキュメントの[registration parameters](/ja/flexi-capture/project-settings/reg-params)を使用します。

バッチを作成した後、追加オプションを指定できます。これを行うには、\[Show NLP Batch Settings....] を選択します。

次の追加オプションは、\[Training Batch Settings] ダイアログで指定できます。

* 各学習バッチ内の最大ドキュメント数
  最大ドキュメント数に達すると、学習バッチに新たに追加されたドキュメントは古いドキュメントと入れ替えられます。
* 置き換えられるドキュメントの最大割合
  1 回の学習セッション中に、新しいドキュメントと置き換え可能な古いドキュメントの割合を示します。学習ステージに送信されてもバッチに含まれなかったドキュメントは、新しい NLP モデルの学習には使用されません。
* バッチに **\_\_** 件を超える新規ドキュメント、または **\_\_** % を超える新規ドキュメントが含まれている場合に学習を開始
  次のいずれか 1 つ以上の条件を満たすと、学習が開始されます。学習バッチに追加された新規ドキュメント数が指定値を超えている場合、またはバッチ内の総ドキュメント数に対する新規ドキュメントの割合が指定値以上である場合です。それ以外の場合、学習は開始されず、学習を開始するのに十分な新規ドキュメントがないことを示すエントリが [バックグラウンドタスクログ](/ja/flexi-capture/operator-work/bg-task-manager) に追加されます。
* 学習に使用するドキュメントの割合
  \[For testing] と \[For training] としてマークされたドキュメントの割合を指定します。たとえば、\[For training] ドキュメントの割合を 70% に制限すると、残りの 30% は \[For testing] としてマークされます。

**学習統計**

学習が完了すると、NLP モデルの統計をエクスポートできます。これには次のものが含まれます。

* 学習バッチ設定に関する情報。
* 新旧両方の NLP モデルに関する情報。
* 学習時間。
* NLP モデルの学習に使用された NLP コンポーネントのバージョン。
* ドキュメントおよびfieldの学習統計。
* エクスポートされたデータの新しさに関する情報。
  *isActual* パラメーターが *false* の場合、学習と新しい NLP モデルの作成後にバッチが変更されています。ドキュメントが追加または削除されたり、ドキュメントのマークアップが変更されたりしている可能性があります。最新の統計を取得するには、学習を再度実行する必要があります。

学習バッチのログをエクスポートするには、バッチを右クリックし、ショートカットメニューで \[Export フィールド抽出 Statistics...] をクリックして、CSV ファイルの保存先を指定します。
