时间序列预测是一个发展历史悠久的技术领域,近些年随着机器学习算法和深度学习算法的应用,时间序列预测方法在越来越多的传统领域焕发光彩。
入门必读的4篇论文见文末↓
01
传统统计学算法和ML/DL算法的优劣
时间序列预测常用的传统的统计学算法有ARIMA, ETS, GARCH等,常用的机器学习算法和深度学习算法有广义线性模型、xgboost、LSTM、CNN、Transformer等。
统计学习方法需要结合时序领域特有的统计学分析(e.g. 自相关系数ACF、偏相关系数PACF、平稳性检验等),将数据通过差分的方式转换成平稳序列后,再通过线性回归的方式建模。
它的长处在于结合了大量的专家对于时间序列的知识,因此不需要大量样本数据即可构建模型,短处在于需要从业人员对时序相关的统计学有深入的理解,并且当存在非线性特征等复杂情况时,需要进行手工特殊处理,不利于规模化预测。
机器学习、深度学习算法将时序预测问题作为回归问题处理,通过选择合适的特征和模型结构,基于训练集数据构建模型。它的长处是不需要结合时序领域特有的统计学分析,算法可以从训练集中总结规律,并且使用模型不是时序领域独有的,对于数据科学的从业人员更友好,短处是需要基于大量样本数据才可训练模型,并且模型通常不具备可解释性(广义线性模型除外)。
当然,当前商业、工业领域往往存在海量数据,对自动化、准确性的要求比可解性的要求更高。所以机器学习和深度学习算法的应用也越来越广泛。
02
时间序列预测算法的应用
时间序列预测在供应链、金融、工业等众多领域有着广泛的应用。
如:客流预测、水位预测、交通流量预测、用电量预测、零件异常检测、水位异常检测、航班定价、电影定价、人员排班计划、生产排程计划等等。
传统行业越来越多地精细化运营需求,为时间序列预测算法提供了广阔的用武之地。
与CV、NLP等标准化应用不同,时间序列预测项目与业务场景结合紧密。预测对象、颗粒度、前置期、准确性指标等对于构建模型最关键的因素往往并非一目了然,只有通过对不同场景的需求进行深入分析才能找到合适解决方案。因此从业者不但需要掌握各种方法的原理,还需要能够结合业务具体使用场景分析项目的需求,找到合适的算法。这对从业者的能力提出了很高的要求,也是业内时间序列预测资深专家短缺的原因。
接下来推荐几篇经典论文供大家学习复现。帮你快速梳理时序预测算法的种类的原理。
03
入门必读的4篇paper
*01
基于历史数据对未来做出预测×2篇
01 Forecasting at Scale
Prophet是Facebook开发的时间序列预测软件包,在业内具有广泛的应用。《Forecasting at Scale》介绍了Prophet的算法原理。
02 Deep AR: Probabilistic Forecasting with Autoregressive Recurrent Networks
Deep AR…一文提出了一种基于LSTM的时间序列预测算法,适用于高通量时间序列预测。该方法不仅能给出预测结果,还能给出结果的置信区间。本文作者来自亚马逊算法研究所。论文中的算法DeepAR已经集成在Amazon Sagemaker机器学习平台,对外提供预估服务的功能。
*02
兼顾长短期预测×1篇
03 A Multi-Horizon Quantile Recurrent Forecaster(2018)
※推荐理由:
在时间序列预测的领域中,有很多场景既要对短期的时间进行预测,又要对长期的时间进行预测。通常机器学习、深度学习算法在短期预测上具有优势,但是在长期预测上表现不佳。本文提出了一种特殊的MLP网络结果,能够很好地兼顾短期和长期预测。此外,训练时间序列预测模型时往往需要通过滑动窗口的形式产生训练集样本,使得数据进行了大量复制,占用了大量内存资源。为了解决这一问题,本文提出了叉式训练(fork-training)方法,在不复制数据的情况下,达到滑动窗相似的训练效果。本文是亚马逊算法研究所在时间序列领域的又一力作。
*03
多层级预测×1篇
04 Prediction of hierarchical time series using structured regularization and its application to artificial neural networks (2020)
※推荐理由:
在实践中经常会出现需要在不同层级做预测的情况,比如说预测某个产品的销量,既需要在较高层级的全国层面做预测,也要在较低层级的省市层面预测。一般上的方法无法保证低层级的预测累加的结果和高层级的结果是一致的,给结果的应用造成了困扰。本论文提出了一种方法,用于解决不同层级预测结果不一致的问题。
除了上述4篇论文之外,我还请到了时间序列预测算法专家YY,分享《时间序列预测算法入门与实战》。
04
内容大纲
01 时间序列预测概述
什么是时间序列?
什么是时间序列预测?
时间序列预测的范式
时间序列预测的专有名词
时间序列的评估
时间序列与机器学习
02 Prophet算法实战
代码实现
背景:某餐饮企业有14家门店,我们需要预测未来一个月每家门店每天的营业额,以指导门店排班。
时序预测算法专家分享
↑扫码0.1元即可观看↑
前50名预约的同学,还额外附赠时间序列预测必读paper20篇~