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

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. 在**“挖掘模型”选项卡上,右键单击 Forecasting,再选择“设置算法参数”**。

  2. 在**“算法参数”对话框的 PERIODICITY_HINT 行中,单击“值”**列,然后键入 {12},包括大括号。

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

  3. FORECAST_METHOD 行中,验证**“值”**文本框是否为空或设置为 MIXED。 如果输入了其他值,请键入 MIXED 以将参数更改回默认值。

  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 行中,单击“值”**列,再键入 Mean。

生成模型

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

处理预测模型

  1. 在 SQL Server Data Tools 的**“挖掘模型”菜单上,选择“处理挖掘结构和所有模型”**。

  2. 看到询问您是否要生成和部署项目的警告时,请单击**“是”**。

  3. 在**“处理挖掘结构 - Forecasting”对话框中,单击“运行”**。

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

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

  5. 再次单击**“关闭”以退出“处理挖掘结构 - Forecasting”**对话框。

课程中的下一个任务

浏览预测模型(数据挖掘中级教程)

请参阅

参考

Microsoft 时序算法技术参考

概念

Microsoft 时序算法

处理要求和注意事项(数据挖掘)