自定义和处理预测模型(数据挖掘中级教程)

 

适用于: SQL Server 2016 Preview

Microsoft 时序算法提供了多个参数,这些参数影响模型创建方式和时间数据分析方式。 更改这些属性可以极大地影响挖掘模型进行预测的方式。

对于教程中的此任务,您将执行以下任务来修改模型:

  1. 将自定义您的模型处理时间段内通过添加新的值的方式 PERIODICITY_HINT 参数。

  2. 您将了解 Microsoft 时序算法的两个其他重要参数:FORECAST_METHOD 和 PREDICTION_SMOOTHING,前者用于控制预测使用的方法,后者则用于自定义长期预测和短期预测的组合。

  3. 您还可以告知算法要如何处理缺失值(可选)。

  4. 在进行所有更改后,您将部署和处理该模型。

设置时序参数

周期提示

PERIODICITY_HINT 参数提供的算法包含有关您希望看到的数据中的其他时间段的信息。 默认情况下,时序模型将尝试自动检测数据中的模式。 但是,如果您已经知道预期的时间周期,提供周期提示可能提高模型的准确性。 但是,如果您提供错误的周期提示,则会降低准确性;因此,如果不确定应该使用什么值,最好使用默认值。

例如,用于此模型的视图每月聚合 Adventure Works DW Multidimensional 2012 的销售数据。 因此,模型使用的每个时间段表示一个月,所有预测将根据月份给出。 由于一年有 12 个月,并希望到销售量模式或多或少重复每年定期将设置 PERIODICITY_HINT 参数 12, ,以指示 12 个时间段 (月) 构成一个完整的销售周期。

预测方法

FORECAST_METHOD 参数控制时序算法进行了优化的短期或长期预测。 默认情况下, FORECAST_METHOD 参数设置为 MIXED,这意味着两个不同的算法将混合和平衡,从而为短期和长期预测提供好的结果。

但是,如果您知道要使用特殊算法,可以将值更改为 ARIMA 或 ARTXP。

加权长期与短期预测

还可以使用 PREDICTION_SMOOTHING 参数自定义组合长期预测和短期预测的方式。 默认情况下,此参数设置为 0.5,这通常会提供最佳平衡,从而实现总体准确性。

若要更改算法参数

  1. 挖掘模型 选项卡上,用鼠标右键单击 预测, ,然后选择 设置算法参数

  2. PERIODICITY_HINT算法参数 对话框中,单击 列中,然后键入 {12}, ,包括大括号。

    默认情况下,该算法还将添加值 {1 }。

  3. FORECAST_METHOD 行中,验证 文本框是否为空或设置到 混合。 如果已输入一个不同的值,请键入 混合 以将该参数更改回默认值。

  4. PREDICTION_SMOOTHING 行中,验证 文本框是否为空或设置为 0.5。 如果已输入一个不同的值,请单击 和类型 0.5 以将该参数更改回默认值。

    备注


    PREDICTION_SMOOTHING 参数仅在 SQL Server Enterprise 中可用。 因此,在 SQL Server Standard 中无法查看或更改 PREDICTION_SMOOTHING 参数的值。 但是,默认行为是使用两种算法并向它们分配相等的权重。

  5. 单击 “确定”

处理缺少的数据(可选)

在许多情况下,您的销售数据可能具有用 null 填充的空白,或者某个商店在报告期限之前没有完成报表,在序列末尾留有空白单元。 在这种情况下,Analysis Services 会引发以下错误,将不处理模型。

"错误 (数据挖掘)︰ 时间戳就未同步开头系列 , ,挖掘模型的 。 所有时序必须以相同的时间标记结束,并且不能有随意缺失的数据点。 如果将 MISSING_VALUE_SUBSTITUTION 参数设置为 Previous 或一个数值常量,那么,只要有可能,就将自动修补缺失的数据点。”

为了避免出现此错误,可以指定 Analysis Services 通过使用以下方法之一自动提供新值以填充空白:

  • 使用平均值。 平均值是使用同一数据序列中的所有有效值来计算的。

  • 使用以前的值。 可以用以前的值替换多个缺少的单元格,但是不能填充起始值。

  • 使用您提供的常量值。

指定通过求平均值来填充空白

  1. 挖掘模型 选项卡上,用鼠标右键单击 预测 列,并选择 设置算法参数

  2. 算法参数 对话框中,在 MISSING_VALUE_SUBSTITUTION 行中,单击 列,然后键入 意味着

生成模型

要使用模型,必须将它部署到服务器,然后通过算法运行定型数据以便处理模型。

处理预测模型

  1. 挖掘模型 菜单 SQL Server Data Tools, ,选择 处理挖掘结构和所有模型

  2. 在出现警告,询问您是否要生成并部署该项目,请单击

  3. 处理挖掘结构-预测 对话框中,单击 运行

    处理进度 对话框将打开以显示有关模型处理的信息。 模型处理可能需要一些时间。

  4. 处理完成后,请单击 关闭 退出 处理进度 对话框。

  5. 单击 关闭 再次以退出 处理挖掘结构-预测 对话框。

课程中的下一个任务

浏览预测模型 #40; 数据挖掘中级教程 )

另请参阅

Microsoft 时序算法技术参考
Microsoft 时序算法
处理要求和注意事项(数据挖掘)