9.4 ルールベース分類
ルールベース分類は、Oracle Text分類アプリケーションを作成するための基本的なソリューションです。
ルールベース分類の基本的なステップは、次のとおりです。ステップの詳細は、例で説明します。
-
分類するドキュメント用の表を作成し、それにドキュメントを移入します。
-
ルール表(カテゴリ表ともいう)を作成します。ルール表は、開発者がネーミングしたカテゴリ(「medicine(医学)」または「finance(会計)」など)、およびドキュメントをこれらのカテゴリにソートするルールで構成されます。
これらのルールが実際の問合せとなります。たとえば、"hospital"、"doctor"、"disease"というワードを含むドキュメントとして、"medicine"カテゴリを定義します。したがって、"hospital OR doctor OR disease"という形式でルールを設定します。
-
ルール表で
CTXRULE
索引を作成します。 -
ドキュメントを分類します。
関連項目:
問合せに使用できる演算子の詳細は、「CTXRULEパラメータおよび制限事項」を参照
9.4.1 ルールベース分類の例
この例では、様々な主題に関する新しい記事を収集し、分類します。ルールを作成したら、それを索引付けし、MATCHES
文を使用してドキュメントを分類できます。
ドキュメントを分類するには:
9.4.2 CTXRULEパラメータおよび制限事項
次の考慮事項は、CTXRULE
索引の索引付けに適用されます。
-
SVM_CLASSIFIER
分類子を使用する場合は、BASIC_LEXER
、CHINESE_LEXER
、JAPANESE_LEXER
またはKOREAN_MORPH_LEXER
レクサーを使用できます。SVM_CLASSIFIER
を使用しない場合は、BASIC_LEXER
レクサー・タイプのみを使用して問合せセットを索引付けできます。 -
filter、memory、datastore、[no]populateの各パラメータは、
CTXRULE
索引タイプには適用できません。 -
CREATE
INDEX
のSTORAGE句は、問合せでCTXRULE索引を作成するためにサポートされています。 -
ワードリストは、問合せセットに対するステミング操作でサポートされています。
-
CTXRULE
に対する問合せは、CONTAINS
問合せと類似しています。CONTAINS
演算子(ABOUT
、AND
、NEAR
、NOT
、OR
、STEM
、WITHIN
およびTHESAURUS
)とともに、基本的なフレーズ(dog house)がサポートされています。MATCHES
演算子を使用してドキュメントを分類する場合、セクション・グループがサポートされています。フィールド・セクションもサポートされていますが、CTXRULE
ではフィールド問合せが直接サポートされないため、CONTEXT
問合せに対しては問合せリライトを使用する必要があります。 -
データベースをエクスポートまたはダウングレードする前に、
CTXRULE
索引を削除する必要があります。
関連項目:
-
レクサーおよび分類のプリファレンスの詳細は、『Oracle Textリファレンス』を参照