次の方法で共有


レッスン 4: DMX を使用した時系列予測の作成

 

対象: SQL Server 2016 Preview

このレッスンと、次のレッスンでは、さまざまな種類で作成したタイム シリーズ モデルに基づく予測の作成データ マイニング拡張機能 (DMX) を使用して. レッスン 1: 時系列マイニング モデルおよびマイニング構造を作成するレッスン 2: 時系列マイニング構造へのマイニング モデルの追加します。

時系列モデルでは、さまざまな方法で予測を作成できます。

  • マイニング モデル内の既存のパターンとデータを使用する。

  • マイニング モデル内の既存のパターンを使用し、データは新たに供給する。

  • モデルに新しいデータを追加するか、モデルを更新する。

このような予測を作成するための構文を以下にまとめます。

既定の時系列予測
使用 PredictTimeSeries ( DMX ) をトレーニング済みのマイニング モデルから予測の指定した数を返します。

たとえばを参照してください PredictTimeSeries ( DMX ) または タイム シリーズ モデルのクエリ例します。

EXTEND_MODEL_CASES
使用 PredictTimeSeries ( DMX ) EXTEND_MODEL_CASES 引数を新しいデータを追加すると、系列の拡張し、更新されたマイニング モデルに基づいて予測を作成します。

このチュートリアルには、EXTEND_MODEL_CASES の使用例が示されています。

REPLACE_MODEL_CASES
使用 PredictTimeSeries ( DMX ) 、元のデータを置き換える新しいデータ系列とマイニング モデルのパターンを新しいデータ系列に適用することに基づく予測を作成するには、REPLACE_MODEL_CASES 引数を持つ。

REPLACE_MODEL_CASES を使用する方法の例は、次を参照してください。 レッスン 2: 予測シナリオ #40; 中級者向けデータ マイニング チュートリアル ) の構築します。

このレッスンの作業

このレッスンでは、次の作業を行います。

  • 既存のデータに基づいて既定の予測を取得するクエリの作成

この次のレッスンでは、関連する次の作業を行います。

  • 新しいデータを提供して更新された予測を取得するクエリの作成

DMX を使用して手動でクエリを作成する以外に、SQL Server Data Tools (SSDT) で予測クエリ ビルダーを使用して予測を作成することもできます。

簡単な時系列予測クエリ

使用するには、まず、 SELECT FROM ステートメントと共に、 PredictTimeSeries 時系列予測を作成する関数。 時系列モデルでは、予測を作成するための簡略化された構文がサポートされます。入力データを提供する必要ありませんが、作成する予測の数を指定する必要があります。 使用するステートメントの汎用例を次に示します。

SELECT <select list>   
FROM [<mining model name>]   
WHERE [<criteria>]  

選択リストは、モデルから列を含めることができます、行の製品の名前などを作成、予測または予測関数など、 ラグ #40; DMX ) または PredictTimeSeries ( DMX ), 、タイム シリーズ マイニング モデルを具体的には。

簡単な時系列予測クエリを作成するには

  1. オブジェクト エクスプ ローラー, のインスタンスを右クリックして Analysis Services, 、指す 新しいクエリ, 、順にクリック DMXします。
クエリ エディターが開き、新しい空のクエリが表示されます。  
  1. ステートメントの汎用例を空のクエリにコピーします。

  2. 次の部分を探します。

    <select list>   
    

    これを次の文字列に置き換えます。

    [Forecasting_MIXED].[ModelRegion],  
    PredictTimeSeries([Forecasting_MIXED].[Quantity],6) AS PredictQty,  
    PredictTimeSeries ([Forecasting_MIXED].[Amount],6) AS PredictAmt  
    

    最初の行では、系列を識別する値をマイニング モデルから取得します。

    2 番目と 3 番目の行を使用して、 PredictTimeSeries 関数です。 各行で別々の属性 ([Quantity] または [Amount]) が予測されます。 予測可能な属性の名前の後の数値は、予測する時間ステップの数を示します。

    AS 句を使用して、各予測関数から返される列の名前を指定します。 別名を指定しない場合は、既定で両方の列が Expression というラベルで返されます。

  3. 次の部分を探します。

    [<mining model>]   
    

    これを次の文字列に置き換えます。

    [Forecasting_MIXED]  
    
  4. 次の部分を探します。

    WHERE [criteria>]   
    

    これを次の文字列に置き換えます。

    WHERE [ModelRegion] = 'M200 Europe' OR  
    [ModelRegion] = 'M200 Pacific'  
    

    最終的なステートメントは次のようになります。

    SELECT  
    [Forecasting_MIXED].[ModelRegion],  
    PredictTimeSeries([Forecasting_MIXED].[Quantity],6) AS PredictQty,  
    PredictTimeSeries ([Forecasting_MIXED].[Amount],6) AS PredictAmt  
    FROM   
    [Forecasting_MIXED]  
    WHERE [ModelRegion] = 'M200 Europe' OR  
    [ModelRegion] = 'M200 Pacific'  
    
  5. ファイル ] メニューのをクリックして 付けて DMXQuery1.dmx を保存します。

  6. 名前を付けて保存 ダイアログ ボックスで、適切なフォルダーに移動し、ファイル名 SimpleTimeSeriesPrediction.dmxします。

  7. ツールバーで、 Execute ] ボタンをクリックします。

    指定した製品と地域の 2 つの組み合わせの 6 つの予測が返されます、 句。

次のレッスンでは、モデルに新しいデータを提供するクエリを作成し、その予測結果をここで作成した予測と比較します。

このレッスンの次の作業

レッスン 5 : 時系列モデルの拡張

参照

PredictTimeSeries (DMX)
Lag (DMX)
タイム シリーズ モデルのクエリ例
レッスン 2: 予測シナリオ #40; 中級者向けデータ マイニング チュートリアル ) の作成