44.6 FEATURE_COMPARE

構文

feature_compare::=

mining_attribute_clause::=

目的

FEATURE_COMPARE関数では、特徴抽出モデルを使用して、キーワード・フレーズなどの短いものや2つの属性リストを含む、2つの異なるドキュメントを比較して似ているかどうかを判別します。FEATURE_COMPARE関数は、特異値分解(SVD)、主成分分析(PCA)、Non-Negative Matrix Factorization (NMF)、明示的セマンティクス分析(ESA)などの特徴抽出アルゴリズムとともに使用できます。このファンクションは、ドキュメントだけでなく、数値データおよびカテゴリ・データにも適用できます。

FEATURE_COMPARE関数への入力は、Oracle Machine Learning for SQLのNMF、SVD、ESAなどの特徴抽出アルゴリズムを使用して構築された単一の機能モデルです。double USING句によって、モデルで抽出された特徴を使用して、2つの異なるドキュメントまたは一定のキーワード・フレーズ、あるいはその2つの組合せを比較して似ているかどうかを判別するメカニズムが提供されます。

FEATURE_COMPAREファンクションの構文では、パーティション化されたモデルをスコアリングするときに、オプションのGROUPINGヒントを使用できます。「GROUPINGヒント」を参照してください。

mining_attribute_clause

mining_attribute_clauseは、スコアの予測子として使用する列の属性を特定します。このファンクションが分析構文で起動された場合は、これらの予測子が一時モデルの構築にも使用されます。mining_attribute_clauseは、PREDICTIONファンクションと同様に動作します。「mining_attribute_clause」を参照してください。

関連項目:

ノート:

次に示す各例は、Oracle Machine Learning for SQLの例からの抜粋です。この例の詳細は、『Oracle Machine Learning for SQLユーザーズ・ガイド』付録Aを参照してください。

ESAモデルは、200,000を超える特徴をレンダリングする2005 Wikiデータ・セットに対して構築されています。ドキュメントはテキストとしてマイニングされ、ドキュメント・タイトルは特徴IDとみなされます。

次の例で、類似するテキストのセットを比較して、その後で類似しないテキストのセットを比較するESAアルゴリズムを使用したFEATURE_COMPAREファンクションを示します。

類似するテキスト

SELECT 1-FEATURE_COMPARE(esa_wiki_mod USING 'There are several PGA tour golfers from South Africa' text AND USING 'Nick Price won the 2002 Mastercard Colonial Open' text) similarity FROM DUAL;

SIMILARITY
----------
      .258

出力されるメトリックに、差異の計算結果が示されます。したがって、より小さい数値は、テキストがより類似していることを示します。そのため、問合せでは1から差異を引いた値で、ドキュメントの類似性メトリックが示されます。

類似しないテキスト

SELECT 1-FEATURE_COMPARE(esa_wiki_mod USING 'There are several PGA tour golfers from South Africa' text AND USING 'John Elway played quarterback for the Denver Broncos' text) similarity FROM DUAL;

SIMILARITY
----------
      .007