7.6 テキスト属性の構成

列をテキスト属性として特定し、任意の属性の変換指示を指定する方法について説明します。

表7-2に示したとおり、CHAR、短いVARCHAR2 (<=4000)、BFILEおよびBLOBの列は、テキスト属性として特定できます。CHARおよび短いVARCHAR2の列が明示的に非構造化テキストとして特定されていない場合、CREATE_MODELは、これらの列を質的属性として処理します。BFILEおよびBLOBの列が明示的に非構造化テキストとして特定されていない場合、CREATE_MODELはエラーを戻します。

列をテキスト属性として特定するには、属性指定でキーワードTEXTを提供します。属性指定とは、変換レコード(transform_rec)のフィールド(attribute_spec)です。変換レコードは、CREATE_MODELに渡すことのできる変換リスト(xform_list)の構成要素です。

ノート:

属性指定には、テキストに関係のない情報も含めることができます。属性指定を作成する手順については、「モデルへの変換の組込み」を参照してください。

次の表に記載されているサブセットで、属性指定のTEXTキーワードを修飾することで、任意のテキスト属性の変換指示を指定できます。

表7-5 属性固有のテキスト変換指示

サブ設定名 説明

BIGRAM

トークンの文字列からの2つの隣接要素(通常は文字、音節または単語)のシーケンス。 

ここで、NORMALトークンはバイグラムと混在しています。

(TOKEN_TYPE:BIGRAM)

POLICY_NAME

CTX_DDL.CREATE_POLICYで作成されたOracle Textのポリシー・オブジェクトの名前。

(POLICY_NAME:my_policy)

STEM_BIGRAM

ここで、STEMトークンが最初に抽出され、ステム・バイグラムが形成されます。

(TOKEN_TYPE:STEM_BIGRAM)

SYNONYM

Oracle Data Miningは、シノニムをサポートしています。次に、オプションのパラメータを示します。

<thesaurus>。ここで、<thesaurus>はシノニムを定義するシソーラスの名前です。SYNONYMがこのパラメータを指定せずに使用されている場合は、デフォルトのシソーラスが使用されます。

(TOKEN_TYPE:SYNONYM)

(TOKEN_TYPE:SYNONYM[NAMES])

TOKEN_TYPE

サポートされている値は次のとおりです。

  • NORMAL (デフォルト)
  • STEM
  • THEME

「属性指定のトークン・タイプ」を参照。

(TOKEN_TYPE:THEME)

MAX_FEATURES

属性から使用する特徴の最大数。

(MAX_FEATURES:3000)

ノート:

CLOBおよび長いVARCHAR2 (4000より長い場合)に対しては、変換指示を指定する場合のみ、TEXTキーワードが必要となります。CHAR、短いVARCHAR2BFILEおよびBLOBに対しては、変換指示を指定するかどうかにかかわらず、TEXTキーワードが常に必要となります。

ヒント:

『Oracle Databaseリファレンス』に示すように、データ・ディクショナリ・ビューALL_MINING_MODEL_ATTRIBUTESで属性指定を表示できます。

属性指定のトークン・タイプ

トークン・タイプとしてステムまたはテーマを指定する場合は、テキスト・ポリシーのレクサー・プリファレンスでこれらのタイプのトークンがサポートされている必要があります。

次の例では、BASIC_LEXERにテーマと英語のステムを追加します。

BEGIN
  CTX_DDL.CREATE_PREFERENCE('my_lexer', 'BASIC_LEXER');
  CTX_DDL.SET_ATTRIBUTE('my_lexer', 'index_stems', 'ENGLISH');
  CTX_DDL.SET_ATTRIBUTE('my_lexer', 'index_themes', 'YES');
END;

例7-1 テキスト用の属性指定の例

次の式では、属性に対するテキスト変換でmy_policyという名前のテキスト・ポリシーを使用する必要があることを指定します。トークン・タイプはTHEMEであり、特徴の最大数は3000です。

"TEXT(POLICY_NAME:my_policy)(TOKEN_TYPE:THEME)(MAX_FEATURES:3000)"