ドキュメントやページを分類するためのルールの設定

このトピックでは、ドキュメントやページを分類するためのルールを設定する機能について説明します。

ルールとその使用方法の理解

ルールは、ドキュメントの割り当て先のカテゴリを決定するために使用されます。以下の例では、ルールで Annexure のような特定のフレーズを指定できます。このルールをドキュメント テキストに適用すると、特定のフレーズが見つかった場合、そのルールに関連付けられたカテゴリには、80 といった高いスコアが割り当てられ、強い一致を示します。

[
{
"DocumentTypeID": 0,
"Location": 0,
"Distance": 1,
"Score": 80,
"KBGuid": "00000000-0000-0000-0000-000000000000",
"IsEnabled": true,
"ExpectExactSequence": false,
"TextRulePhrases": [
{
"Text": "Annexure",
"IsNegativePhrase": false,
"PhraseType": 1
}
}
]

ルールは、最も関連性の高いドキュメントのカテゴリを決定する際に、分類モデルの精度を向上するために追加のガイダンスが必要な場合に役立ちます。技術的には、ルールを使用してすべての分類を実行することは可能ですが、特に大量のカテゴリを扱う場合はルール構成の管理に時間がかかって大きなオーバーヘッドとなるため、ベスト プラクティスとは言えません。

ルール ファイルの例

ルール ファイルは json スキーマであり、以下のとおり json 形式になっています。<ファイル名>.json では、複数のルールを設定できます。分類のトレーニング プロセスで考慮すべきドキュメントについては、指定されたトレーニング フォルダー カテゴリ (例: C:\Invoice\Vendor1) に配置する必要があります。

[
{
"DocumentTypeID": 0,
"Location": 1,
"Distance": 3,
"Score": 90,
"KBGuid": "00000000-0000-0000-0000-000000000000",
"IsEnabled": true,
"ExpectExactSequence": true,
"TextRulePhrases": [
{
"Text": "Annexure",
"IsNegativePhrase": false,
"PhraseType": 1
},
{
"Text": "Terms & Conditions",
"IsNegativePhrase": false,
"PhraseType": 1
},
{
"Text": "Payment Terms",
"IsNegativePhrase": false,
"PhraseType": 1
}
]
},
{
"DocumentTypeID": 2,
"Location": 2,
"Distance": 1,
"Score": 95,
"KBGuid": "00000000-0000-0000-0000-000000000000",
"IsEnabled": true,
"ExpectExactSequence": false,
"TextRulePhrases": [
{
"Text": "Addendum",
"IsNegativePhrase": true,
"PhraseType": 5
}
]
}
]

ルール ファイルの構成可能なプロパティ

構成 説明
DocumentTypeID 現在、このフィールドはサポートされていません。設定されるルールについては、静的テキストを 0 として保持することができます。
Location
この構成では、ルールが適用されるドキュメント テキストの場所を指定します。値は、0、1、2、3 です。
  • "Location": 0 任意の場所: フレーズを見つけるための制限はなく、ドキュメント上のどこでもかまいません。

  • "Location": 1最初のページ: フレーズはドキュメントの最初のページにある必要があります。

  • "Location": 2 キャプション内: フレーズはドキュメントのキャプション テキスト内にある必要があります。
  • "Location": 3 最後のページ: フレーズはドキュメントの最後のページにある必要があります。テキスト ルールの分類子に指定されているページが数ページしかない場合は、最後のページが分類子に渡されることになります。
Distance
この構成では、ドキュメント テキスト上で検索を実行する際のフレーズ間の距離を指定します。ルールは、この構成に基づいて距離が指定されている場合にのみ一致します。値は、0、1、2、3 です。
  • "Distance": 0同じテキスト行: すべてのフレーズは同じテキスト行にある必要があります。
  • "Distance": 1 次のテキスト行: すべてのフレーズは同じテキスト行にあるか、または互いの間に最大 1 つの改行がある必要があります。
  • "Distance": 2 同じパラグラフ: すべてのフレーズは同じパラグラフのテキスト内にある必要があります。
  • "Distance": 3 同じページ: すべてのフレーズは同じページにある必要があります。
Score ルールの照合が実行された後、そのルールに関連するカテゴリ (またはトレーニング フォルダー) にスコアが割り当てられます。スコア値の範囲は -100 ~ 100 です。
KBGuid 現在、このフィールドはサポートされていません。設定されるルールについては、静的テキストを 00000000-0000-0000-0000-000000000000 として保持することができます。
IsEnabled これにより、true または false をそれぞれ設定することで、ルールを有効または無効にすることができます。
ExpectExactSequence
ルール内で複数のフレーズを検索する場合、この構成によって一致に基づく正確な順序が指定されます。たとえば、この例で true を設定した場合、ルールが一致するためには、"Text": "Annexure""Text": "Terms & Conditions""Payment Terms" がこの順序でドキュメント テキストに存在する必要があります。これらのフレーズの間に他のテキストがあってもかまいませんが、これらのフレーズの順序は、次から次に一貫していることが重要です。
注: 想定される順序が特定のパターンに従うことが非常に明確でない限り、この構成を false のままにしておくことをお勧めします。

TextRulePhrases

TextRulePhrases には、ドキュメント テキストに対して検索する必要があるすべてのフレーズ テキスト値が含まれています。1 つ以上のフレーズ テキスト値を指定できます。

Text Text - ドキュメント テキストに対して検索する必要があるフレーズ テキスト値を指定します。
IsNegativePhrase IsNegativePhrase - 検索条件が否定的なフレーズ タイプの検索かどうかを指定します。この例で true を設定した場合は、"Text": "Addendum" がドキュメント テキストに存在しなければ、ルールが一致することになります。
PhraseType PhraseType は、フレーズ テキスト値がドキュメント テキストに対して検索される際に使用される一致のタイプを指定します。

"PhraseType": 1 あいまい一致を使用すると、単語の一致にある程度の許容範囲を持たせることができます。レーベンシュタイン距離が 80% 以上であれば、フレーズは一致となります。5 文字の単語の場合、1 文字が異なっていてもかまわないということです。

"PhraseType": 5完全一致ではフレーズの完全一致が求められますが、大文字/小文字は無視され、句読点のフィルタリングも行われます。

"PhraseType": 6 正規表現を使用すると、正規表現を定義して、元のテキスト内で検索することができます。このタイプの一致では、テキストの前処理や句読点文字のフィルタリングは行われません。