予測クエリ (DMX)

Microsoft SQL Server Analysis Services では、データ マイニング拡張機能 (DMX) で予測クエリを使用して、マイニング モデルの結果に基づいて、新しいデータセット内の不明の列の値を予測することができます。

予測の型

DMX を使用して、次の型の予測を作成することができます。

  • Prediction join
    マイニング モデル内に存在するパターンに基づいて、入力データに対する予測を作成するのに使用します。このクエリ ステートメントの後に、マイニング モデル列と入力列の結合条件を指定する ON 句を置く必要があります。

  • Natural prediction join
    クエリを実行するテーブル内の列の名前と正確に一致する、マイニング モデル内の列の名前に基づいた予測を作成するのに使用します。マイニング モデル列と入力列の間で一致する名前に基づいて結合条件が自動的に生成されるので、このクエリ ステートメントには ON 句は必要ありません。

  • Empty prediction join
    最も可能性の高い予測を検出するのに使用します。入力データを指定する必要はありません。これにより、マイニング モデルの内容にのみ基づいた予測が返されます。

  • Singleton query
    データをクエリに供給することで予測を作成する場合に使用します。このステートメントは、1 つのケースをクエリに供給することで結果をすばやく得ることができるため便利です。たとえば、このクエリを使用して、35 歳の既婚女性が自転車を購入する可能性があるかどうかを予測することができます。このクエリには、外部データ ソースは必要ありません。

使用するクエリの型は、モデルから取得する情報の種類によって異なります。簡単な予測をリアルタイムで作成する場合、たとえば、Web サイト上の潜在消費者が、自転車購入者の人物像に当てはまるかどうかを判断する場合、単一のクエリを使用します。データ ソース内に含まれているケースのセットから予測のバッチを作成する場合は、通常の予測クエリを使用します。

クエリ構造

DMX で予測クエリを作成するには、次の要素の組み合わせを使用します。

  • SELECT [FLATTENED]

  • TOP

  • FROM <model> PREDICTION JOIN

  • ON

  • WHERE

  • ORDER BY

予測クエリの SELECT 要素は、結果セットに表示される列および式を定義します。また、次のデータを含むことができます。

  • マイニング モデルからの Predict 列または PredictOnly 列。

  • 予測を作成するのに使用する入力データからの列。

  • データの列を返す関数。

FROM <model> PREDICTION JOIN 要素は、予測を作成するのに使用されるソース データを定義します。単一のクエリの場合、これは列に割り当てられた一連の値となります。空の予測結合の場合は、空のままとなります。

ON 要素は、マイニング モデルで定義された列を、外部データセット内の列にマップします。空の予測結合クエリまたは自然予測結合を作成する場合は、この要素を含める必要はありません。

予測クエリの結果をフィルタ選択するには、WHERE 句を使用します。最も可能性の高い予測を選択するには、TOP 句または ORDER BY 句を使用します。これらの句の使用に関する詳細については、「SELECT (DMX)」を参照してください。

予測ステートメントの構文に関する詳細については、「SELECT FROM <model> PREDICTION JOIN (DMX)」および「SELECT FROM <model> (DMX)」を参照してください。