使用更新的数据进行时序预测(中间数据挖掘教程)

使用扩展销售数据创建预测

在本课中,你将创建一个预测查询,用于向模型添加新的销售数据。 通过使用新数据扩展模型,可以获取包含最新数据点的 up-to日期预测。

创建使用新数据的时序预测非常简单:只需将参数EXTEND_MODEL_CASES添加到 PredictTimeSeries (DMX) 函数,指定新数据的源,并指定要获取的预测数量。

警告

参数EXTEND_MODEL_CASES是可选的;默认情况下,模型会在每次创建时间序列预测查询时通过将新数据联接为输入来扩展。

生成预测查询并添加新数据

  1. 如果模型尚未打开,请双击预测结构,然后在数据挖掘设计器中单击 “挖掘模型预测 ”选项卡。

  2. “挖掘模型 ”窗格中,应已选择模型预测。 如果未选择,请单击 “选择模型”,然后选择模型“预测”。

  3. “选择输入表” 窗格中,单击“ 选择事例表”。

  4. 在“ 选择表 ”对话框中,选择数据源 Adventure Works DW 多维 2012。

    从数据源视图列表中,选择“NewSalesData”,然后单击“ 确定”。

  5. 右键单击设计区域的图面,然后选择“ 修改连接”。

  6. 使用“ 修改映射 ”对话框,将模型中的列映射到外部数据中的列,如下所示:

    • 将挖掘模型中的 ReportingDate 列映射到输入数据中的 NewDate 列。

    • 将挖掘模型中的 Amount 列映射到输入数据中的 NewAmount 列。

    • 将挖掘模型中的 Quantity 列映射到输入数据中的 NewQty 列。

    • 将挖掘模型中的 ModelRegion 列映射到输入数据中的“序列”列。

  7. 现在,你将生成预测查询。

    首先,将一列添加到预测查询中,以输出预测适用的序列。

    1. 在网格中,单击“ ”下的第一个空行,然后选择“预测”。

    2. “字段 ”列中,选择“模型区域”和“ 别名”,键入 Model Region

  8. 接下来,添加和编辑预测函数。

    1. 单击空行,然后在 “源”下选择 “预测函数”。

    2. 对于字段,请选择PredictTimeSeries

    3. 对于 别名,请键入 “预测值”。

    4. 将字段“数量”从 “挖掘模型 ”窗格拖到 “条件/参数 ”列中。

    5. “条件/参数 ”列中,在字段名称后面键入以下文本: 5,EXTEND_MODEL_CASES

      “条件/参数”文本框的完整文本应如下所示:[Forecasting].[Quantity],5,EXTEND_MODEL_CASES

  9. 单击“ 结果 ”并查看结果。

    预测从 7 月开始(原始数据结束后的第一次切片)和 11 月结束(原始数据结束后的第五次切片)。

可以看到,若要有效地使用此类型的预测查询,需要知道旧数据何时结束,以及新数据中有多少时间切片。

例如,在此模型中,原始数据系列在 6 月结束,数据为 7 月、8 月和 9 月。

使用EXTEND_MODEL_CASES的预测始终从原始数据系列的末尾开始。 因此,如果只想获取未知月份的预测,则需要指定预测的起点和终点。 这两个值都指定为从旧数据末尾开始的多个时间切片。

以下步骤演示如何执行此操作。

更改预测的起点和终点

  1. 在预测查询生成器中,单击“ 查询 ”切换到 DMX 视图。

  2. 找到包含 PredictTimeSeries 函数的 DMX 语句,并按如下所示对其进行更改:

    PredictTimeSeries([Forecasting 12].[Quantity],4,6,EXTEND_MODEL_CASES)

  3. 单击“ 结果 ”并查看结果。

    现在,预测从 10 月开始(第四次时间切片,从原始数据结束)和 12 月结束(第六次切片,从原始数据结束计数)。

课程中的下一个任务

使用替换数据进行时序预测(中间数据挖掘教程)

另请参阅

Microsoft时序算法技术参考
时间序列模型的模型内容挖掘(Analysis Services - 数据挖掘)