关于预测 - 使用 Amazon Forecast 的时间序列预测原理

关于预测

在本文档中,预测意味着预测时间序列的未来值:对一个问题的输入或输出具有时间序列的性质。

预测系统

预测系统包括一组不同的用户:

  • 最终用户,他们查询特定产品的预测,并决定购买多少单位;这可能是一个人,也可能是自动化系统。

  • 业务分析师/商业智能,他们负责为最终用户提供支持,运行和整理汇总报告。

  • 数据科学家,他们以迭代方式分析需求模式和因果关系,并添加新功能,以对模型进行渐进式改进或改进预测模型。

  • 工程师,他们负责建立数据收集的基础设施,并确保系统输入数据的可用性。

Amazon Forecast 减轻了软件工程师的工作,让数据科学能力有限的企业能够利用最先进的预测技术。具有数据科学能力的企业可以利用我们提供的诸多诊断功能,通过 Amazon Forecast 很好地解决预测问题。

预测问题发生在哪里?

预测问题发生在许多自然产生时间序列数据的领域。其中包括零售、医疗分析、容量规划、传感器网络监测、财务分析、社会活动挖掘和数据库系统。例如,在大多数支持数据驱动型决策的企业中,预测在自动化和优化运营流程方面发挥着关键作用。产品供求预测可用于优化库存管理、人员调度和拓扑规划,而且通常是供应链优化大多数环节的关键技术。

下图概述了一个预测问题,该问题基于呈现模式(在本例中为季节性)的观测时间序列,并在指定时间段内创建了预测。横轴表示时间,从过去(左)到未来(右)。纵轴表示测量单位。根据过去(蓝色)到垂直的黑线,确定未来(红色)是预测任务。

概述预测任务的图表

预测任务概述

尝试解决预测问题之前的注意事项

在解决预测问题之前,您需要了解几个最重要的问题,包括:

  • 您需要解决预测问题吗?

  • 您为什么要解决预测问题?

由于时间序列数据无处不在,很容易在任何地方发现预测问题。然而,这其中存在着一个关键问题,就是是否真的需要解决预测问题,或者说,是否可以在不牺牲业务有效决策的情况下完全规避这个问题。提出这个问题很重要,因为从科学上讲,预测是机器学习中最难的问题之一。

例如,思考一下在线零售商的产品推荐。此产品推荐问题可以描述为预测问题,即对于每对客户库存单位(SKU, stock keeping unit),您预测该特定客户将购买的特定商品的单位数量。这种问题表述有很多好处。一个好处是明确考虑了时间因素,因此您可以根据客户的购买模式推荐产品。

但是,产品推荐问题很少被描述为预测问题,因为解决这样的预测问题(例如,在客户 SKU 层面上信息的稀疏程度和问题的规模)比直接解决推荐问题困难得多。因此,在考虑预测应用程序时,重要的是要考虑预测的下游使用情况,以及是否有可能使用替代方法来解决这个问题。

在这些情况下,Amazon Personalize 可以提供帮助。Amazon Personalize 是一项机器学习服务,可让开发人员轻松使用其应用程序为客户提供个性化推荐。

在确定需要解决预测问题后,接下来要问的问题是,为什么要解决预测问题? 在许多商业环境中,预测通常只是达到目的的一种手段。例如,对于零售环境中的需求预测,预测可用于制定库存管理决策。预测问题通常是决策问题的输入,而决策问题反过来又可以建模为优化问题。

此类决策问题的示例包括,要购买的单位数量或处理现有库存的最佳方法。其他业务预测问题包括,预测服务器容量或预测制造环境中对原材料/零件的需求。这些预测可用作其他过程的输入,要么用于上述决策问题,要么用于情景模拟,然后在没有明确模型的情况下用于规划。预测本身不是目的,但也有例外。例如,在财务预测中,预测直接用于积累金融储备或呈现给投资者。

要了解预测的目的,请考虑以下问题:

  • 您应该预测未来多长时间?

  • 您需要多久生成一次预测?

  • 预测中是否有您应该深入研究的具体方面?