次の方法で共有


モデルに予測関数を適用する

予測クエリを作成するには、まず、クエリの基になるマイニング モデルを選択する必要があります。 現在のプロジェクトに存在する任意のマイニング モデルを選択できます。

モデルを選択したら、 クエリに予測関数 を追加します。 これは、予測関数が多くの目的で使用されることを理解するためにインポートされます。はい、値を予測することはできますが、関連する統計や、予測の生成に使用された情報を取得することもできます。 予測関数は、次の種類の値を返すことができます。

  • 予測可能な属性の名前と、予測される値。

  • 予測値の分布と分散に関する統計。

  • 指定した結果の確率、または考えられるすべての結果の確率。

  • 上位または下位のスコアまたは値。

  • 指定したノード、オブジェクト、または属性に関連付けられている値。

さまざまな予測関数を使用できますが、作成したモデルの種類に合った関数を選択する必要があります。 通常、この選択は、モデルの作成に使用されるアルゴリズムによって異なります。

  • ほぼすべてのモデル型でサポートされている予測関数の一覧については、「 一般的な予測関数 (DMX)」を参照してください。

  • さらに、個々のアルゴリズムでは、さまざまな特殊な関数がサポートされています。 たとえば、Microsoft クラスタリング アルゴリズムに基づいてマイニング モデルを作成する場合は、特殊な予測関数を使用して、データ値からクラスター重心までの距離など、クラスターに関する情報を検索できます。

    特定の種類のマイニング モデルに対してクエリを実行する方法の例については、「データ マイニング アルゴリズム (Analysis Services - データ マイニング)」のアルゴリズムリファレンス トピックを参照してください。

予測に使用するマイニング モデルを選択する

  1. SQL Server Management Studio でモデルを右クリックし、[ 予測クエリの作成] を選択します。

    --又は--

    SQL Server Data Tools (SSDT) で、[マイニング モデル予測] タブをクリックし、[マイニング モデル] テーブルの [モデルの選択] をクリックします。

  2. [ マイニング モデルの選択 ] ダイアログ ボックスで、マイニング モデルを選択し、[ OK] をクリックします。

    現在の Analysis Services データベース内の任意のモデルを選択できます。 別のデータベースのモデルを使用してクエリを作成するには、そのデータベースのコンテキストで新しいクエリ ウィンドウを開くか、そのモデルを含むソリューション ファイルを開く必要があります。

予測関数をクエリに追加する

  1. 予測クエリ ビルダーで、[Singleton Query Input]\(シングルトン クエリ入力\) ダイアログ ボックスに値を指定するか、モデルを外部データ ソースにマッピングすることによって、予測に使用される入力データを構成します。

    詳細については、「 予測クエリの入力データの選択とマップ」を参照してください

    警告

    予測を生成するために入力を指定する必要はありません。 入力がない場合、アルゴリズムは通常、考えられるすべての入力で最も可能性の高い予測値を返します。

  2. [ ソース ] 列をクリックし、一覧から値を選択します。

    <モデル名> 出力にマイニング モデルの値を含めるには、このオプションを選択します。 予測可能な列のみを追加できます。

    モデルから列を追加すると、返される結果は、その列の値の一覧とは異なります。

    このオプションで追加した列は、結果の DMX ステートメントの SELECT 部分に含まれます。
    Prediction 関数 予測関数の一覧を参照するには、このオプションを選択します。

    選択した値または関数は、結果の DMX ステートメントの SELECT 部分に追加されます。

    予測関数の一覧は、選択したモデルの種類によってフィルターまたは制約されません。 したがって、関数が現在のモデル型でサポートされているかどうかについて不明な点がある場合は、関数をリストに追加して、エラーがあるかどうかを確認できます。

    $ ($AdjustedProbability など) の前にあるリスト項目は、関数を使用するときに出力される入れ子になったテーブルの列を表 PredictHistogram。 これらは、入れ子になったテーブルではなく、1 つの列を返すために使用できるショートカットです。
    カスタム式 カスタム式を入力し、出力にエイリアスを割り当てるには、このオプションを選択します。

    カスタム式は、結果として得られる DMX 予測クエリの SELECT 部分に追加されます。

    このオプションは、各行で出力するテキストを追加する場合、VB 関数を呼び出す場合、またはカスタム ストアド プロシージャを呼び出す場合に便利です。

    DMX から VBA 関数と Excel 関数を使用する方法については、 MDX および DAX の VBA 関数を参照してください。
  3. 各関数または式を追加した後、DMX ビューに切り替えて、DMX ステートメント内で関数がどのように追加されるかを確認します。

    警告

    予測クエリ ビルダーは、[ 結果] をクリックするまで DMX を検証しません。 多くの場合、クエリ ビルダーによって生成される式が無効な DMX であることがわかります。 一般的な原因は、予測可能な列に関連しない列を参照しているか、入れ子になったテーブル内の列を予測しようとしているため、サブ SELECT ステートメントが必要です。 この時点で、DMX ビューに切り替えて、ステートメントの編集を続けることができます。

例: クラスタリング モデルに対してクエリを作成する

  1. このサンプル クエリの構築に使用できるクラスタリング モデルがない場合は、 基本的なデータ マイニング チュートリアルを使用してモデル [TM_Clustering] を作成します。

  2. SQL Server Management Studio で、モデル [TM_Clustering] を右クリックし、[ 予測クエリのビルド] を選択します。

  3. [ マイニング モデル ] メニューの [シングルトン クエリ] を選択します。

  4. [ シングルトン クエリ入力 ] ダイアログ ボックスで、次の値を入力として設定します。

    • 性別 = 男

    • 通勤距離 = 5 - 10 マイル

  5. クエリ グリッドの [ソース] で、マイニング モデルTM_Clustering選択し、[Bike Buyer] 列を追加します。

  6. [ソース] で [予測関数] を選択し、関数を追加Cluster

  7. [ソース] で [予測関数] を選択し、関数を追加してPredictSupportし、モデル列 [Bike Buyer] を抽出条件/引数ボックスにドラッグします。 [エイリアス] 列に「Support」と入力します。

    [ 抽出条件/引数 ] ボックスから、予測関数と列参照を表す式をコピーします。

  8. [ソース] で [カスタム式] を選択し、エイリアスを入力し、次の構文を使用して Excel CEILING 関数を参照します。

    Excel![CEILING](<arguments) as <return type>  
    

    列参照を関数の引数として貼り付けます。

    たとえば、次の式はサポート値の CEILING を返します。

    EXCEL!CEILING(PredictSupport([TM_Clustering].[Bike Buyer]),2)  
    

    エイリアス列に「CEILING」と入力します。

  9. [ クエリ テキスト ビューに切り替える ] をクリックして生成された DMX ステートメントを確認し、[ クエリ結果ビューに切り替える ] をクリックして予測クエリによって出力された列を表示します。

    次の表に、予想される結果を示します。

    自転車購入者 $クラスター サポート 天井
    0 クラスター 8 954 953.948638926372

ステートメント内の他の場所に他の句を追加する場合など、WHERE 句を追加する場合は、グリッドを使用して追加することはできません。最初に DMX ビューに切り替える必要があります。

こちらもご覧ください

データ マイニング クエリ