このレッスンの前のタスクでは、時系列モデルを作成し、結果を調べます。 既定では、Analysis Services は常に時系列モデルに対して 5 つの予測のセットを作成し、予測グラフの一部として予測値を表示します。 ただし、データ マイニング拡張機能 (DMX) 予測クエリを作成して予測を作成することもできます。
このタスクでは、ビューアーで見たのと同じ予測を生成する予測クエリを作成します。 このタスクは、基本的なデータ マイニング チュートリアルのレッスンを既に完了しており、予測クエリ ビルダーの使用方法を理解していることを前提としています。 時系列モデルに固有のクエリを作成する方法について説明します。
時系列予測の作成
通常、予測クエリを作成する最初の手順は、マイニング モデルと入力テーブルを選択することです。 ただし、時系列モデルでは、通常の予測に追加の入力は必要ありません。 そのため、モデルにデータを追加したり、データを置き換えたりしない限り、予測を行うときに新しいデータ ソースを指定する必要はありません。
このレッスンでは、予測ステップの数を指定する必要があります。 系列名を指定して、製品と地域の特定の組み合わせの予測を取得できます。
モデルと入力テーブルを選択するには
データ マイニング デザイナーの [ マイニング モデル予測 ] タブの [ マイニング モデル ] ボックスで、[ モデルの選択] をクリックします。
[ マイニング モデルの選択 ] ダイアログ ボックスで、[予測構造] を展開し、一覧から 予測モデルを 選択し、[ OK] をクリックします。
[入力テーブルの選択] ボックスは無視します。
注
時系列モデルの場合、クロス予測を行わない限り、個別の入力を指定する必要はありません。
[ ソース ] 列の [ マイニング モデル予測 ] タブのグリッドで、最初の空の行のセルをクリックし、[ マイニング モデルの予測] を選択します。
[フィールド] 列で、[モデル領域] を選択します。
このアクションにより、予測クエリに系列識別子が追加され、予測が適用されるモデルとリージョンの組み合わせを示します。
[ソース] 列の次の空の行をクリックし、[予測関数] を選択します。
[フィールド] 列で、[PredictTimeSeries] を選択します。
注
時系列モデルで
Predict関数を使用することもできます。 ただし、既定では、Predict 関数は系列ごとに 1 つの予測のみを作成します。 したがって、複数の予測ステップを指定するには、 PredictTimeSeries 関数を使用する必要があります。[マイニング モデル] ウィンドウで、マイニング モデル列 [量] を選択します。前に追加した PredictTimeSeries 関数の [抽出条件/引数] ボックスに Amount をドラッグします。
[ 抽出条件/引数 ] ボックスをクリックし、フィールド名の後にコンマと 5 を入力します。
[ 抽出条件/引数 ] ボックスのテキストに次の内容が表示されます。
[Forecasting].[Amount],5[ エイリアス ] 列に「
PredictAmount」と入力します。[ソース] 列の次の空の行をクリックし、もう一度 [予測関数] を選択します。
[フィールド] 列で、[PredictTimeSeries] を選択します。
[マイニング モデル] ウィンドウで、列 Quantity を選択し、2 番目の PredictTimeSeries 関数の抽出条件/引数ボックスにドラッグします。
[ 抽出条件/引数 ] ボックスをクリックし、フィールド名の後にコンマと 5 を入力します。
[ 抽出条件/引数 ] ボックスのテキストに次の内容が表示されます。
[Forecasting].[ Quantity],5[ エイリアス ] 列に「
PredictQuantity」と入力します。[ 切り替え] をクリックしてクエリ結果ビューを表示します。
クエリの結果は表形式で表示されます。
クエリ ビルダーで 3 種類の結果を作成し、1 つは列の値を使用し、2 つは予測関数から予測値を取得することを忘れないでください。 そのため、クエリの結果には 3 つの個別の列が含まれます。 最初の列には、製品と地域の組み合わせの一覧が含まれています。 2 番目と 3 番目の列には、それぞれ予測結果の入れ子になったテーブルが含まれています。 入れ子になった各テーブルには、次の表のように、時間ステップと予測値が含まれています。
結果の例 (金額は小数点以下 2 桁に切り捨てられます)。
M200 Europe PredictAmount
| $TIME | 金額 |
|---|---|
| 7/25/2008 | 99978.00 |
| 8/25/2008 | 145575.07 |
| 9/25/2008 | 116835.19 |
| 10/25/2008 | 116537.38 |
| 11/25/2008 | 107760.55 |
M200 Europe PredictQuantity
| $TIME | 数量 |
|---|---|
| 7/25/2008 | 52 |
| 8/25/2008 | 67 |
| 9/25/2008 | 58 |
| 10/25/2008 | 五十七 |
| 11/25/2008 | 54 |
M200 北米 - 金額予測
| $TIME | 金額 |
|---|---|
| 7/25/2008 | 348533.93 |
| 8/25/2008 | 340097.98 |
| 9/25/2008 | 257986.19 |
| 10/25/2008 | 374658.24 |
| 11/25/2008 | 379241.44 |
M200 北米 - 予測数量
| $TIME | 数量 |
|---|---|
| 7/25/2008 | 272 |
| 8/25/2008 | 152 |
| 9/25/2008 | 250 |
| 10/25/2008 | 181 |
| 11/25/2008 | 290 |
警告
このリリースでは、サンプル データベースで使用される日付が変更されました。 以前のバージョンのサンプル データを使用している場合は、異なる結果が表示されることがあります。
予測結果の保存
予測結果を使用するには、いくつかの異なるオプションがあります。 結果をフラット化し、結果ビューからデータをコピーして、Excel ワークシートまたはその他のファイルに貼り付けることができます。
結果を保存するプロセスを簡略化するために、データ マイニング デザイナーには、データ ソース ビューにデータを保存する機能も用意されています。 データ ソース ビューに結果を保存する機能は、SQL Server Data Tools (SSDT) でのみ使用できます。 結果はフラット化された形式でのみ格納できます。
結果ウィンドウで結果をフラット化するには
予測クエリ ビルダーで、[ クエリ デザイン ビューに切り替える] をクリックします。
ビューが変更され、DMX クエリ テキストを手動で編集できるようになります。
SELECTキーワードの後にFLATTENEDキーワードを入力します。 完全なクエリ テキストは次のようになります。SELECT FLATTENED [Forecasting].[Model Region], (PredictTimeSeries([Forecasting].[Amount],5)) as [PredictAmount], (PredictTimeSeries([Forecasting].[Quantity],5)) as [PredictQuantity] FROM [Forecasting]必要に応じて、次の例のように、句を入力して結果を制限できます。
SELECT FLATTENED [Forecasting].[Model Region], (PredictTimeSeries([Forecasting].[Amount],5)) as [PredictAmount], (PredictTimeSeries([Forecasting].[Quantity],5)) as [PredictQuantity] FROM [Forecasting] WHERE [Forecasting].[Model Region] = 'M200 North America' OR [Forecasting].[Model Region] = 'M200 Europe'[ 切り替え] をクリックしてクエリ結果ビューを表示します。
予測クエリ結果をエクスポートするには
[ クエリ結果の保存] をクリックします。
[ データ マイニング クエリ結果の保存 ] ダイアログ ボックスの [ データ ソース] で、[ AdventureWorksDW2012] を選択します。 データを別のリレーショナル データベースに保存する場合は、データ ソースを作成することもできます。
[ テーブル名] 列に、 テスト予測などの新しい一時テーブル名を入力します。
[保存] をクリックします。
注
作成したテーブルを表示するには、データを保存したインスタンスのデータベース エンジンへの接続を作成し、クエリを作成します。
結論
基本的な時系列モデルを構築し、予測を解釈し、予測を作成する方法を学習しました。
このチュートリアルの残りのタスクは省略可能であり、高度な時系列予測について説明します。 先に進む場合は、モデルに新しいデータを追加し、拡張系列で予測を作成する方法を学習します。 また、モデルの傾向を使用しながら、データを新しい一連のデータに置き換えて、クロス予測を実行する方法についても説明します。
次のレッスン
高度な時系列予測 (中間データ マイニング チュートリアル)