大侠幸会,在下全网同名「算法金」 0 基础转 AI 上岸,多个算法赛 Top 「日更万日,让更多人享受智能乐趣」
参考 论文:https://arxiv.org/abs/2101.02118
更多内容,见微*公号往期文章:
时间序列预测,这玩意儿在数据分析界可是个香饽饽,尤其在电力、交通、空气质量这些领域里,预测得准,资源分配更合理,还能让相关部门提前做好准备。但深度学习这小子横空出世,开始抢传统统计学方法的风头。那么问题来了,时间序列预测非得用深度学习吗?咱们今天就来掰扯掰扯。
滚动平均,这招简单粗暴,就是把一段时间的数据一平均,把那些随机的波动给抹平,让长期趋势露个脸。这招对付那些没啥花头的时间序列挺管用。
VAR模型,这货是个多面手,能把多个时间序列的过去值拿来预测未来,把变量间的相互勾搭给看个清楚。这在经济学和金融领域里头,预测经济指标的相互作用,玩得风生水起。
ARIMA模型,这家伙把自回归、差分、移动平均三招合一,专门对付时间序列里的趋势和季节性。得先把序列给整平稳了,这样预测起来才靠谱。这模型在经济预测、销售预测、气象预测这些领域里头,玩得挺溜。
传统时间序列预测模型优点不少:
不过,这些老方法在处理复杂的非线性关系和多变量交互效应时,就显得有点力不从心了。数据量大了,复杂度高了,深度学习方法就有机会上位了。
\
LSTM,这货是递归神经网络的升级版,门控机制一加,梯度消失问题就解决了。这货记性好,长时间序列里的信息记得牢,预测起来自然给力。
DARNN,这货加上了注意力机制,能挑出时间序列里的重要特征,预测精度就上去了。先提取特征,再用注意力机制和解码器预测,这招在不少预测任务里都挺灵。
DeepGlo,这货把时间序列分成全局趋势和局部细节,分别建模,最后合并预测结果。这样不同尺度的特征都能照顾到,预测的准确性自然就高了。
TFT,这货用多头注意力机制和序列到序列的结构,处理时间序列的复杂关系。短期长期依赖关系都能搞定,处理复杂时空特征的数据,表现杠杠的。
DeepAR,这货基于自回归思想,序列到序列的建模方式,用过去的时间序列数据预测未来。这货能处理大规模高维数据,预测时还能考虑多个时间序列的相互影响,精度自然不低。
深度学习模型虽然在时间序列预测上挺能打,但复杂度高,计算成本也高,对数据量和计算资源要求也不小。所以选模型的时候,得综合考虑应用场景、数据特点和计算资源,挑最合适的。
深度学习虽然火,但传统的机器学习方法,比如梯度提升回归树(GBRT),在实际应用中也挺能打。GBRT通过多个弱学习器组合,提升预测性能。研究人员把GBRT和深度学习模型比了比,看看谁更牛。
这项研究把时间序列预测任务变成了窗口回归问题,对GBRT模型进行了特征设计和结构调整。就是把时间序列数据分成固定长度的窗口,每个窗口的数据用来预测下一个时间点的值。所有模型都用同样的数据集和评估指标,公平比较。
研究用了多个公开的时间序列数据集,涵盖能源消耗、交通流量、空气质量等领域,数据时间跨度和频率各异,全面评估模型表现。
评估模型预测性能,用了均方误差(MSE)、均绝对误差(MAE)和对称平均绝对百分比误差(sMAPE)这些常用指标,全面衡量预测误差和稳定性。
研究结果,GBRT在多个数据集上的表现超过了所有评估的深度神经网络(DNN)模型。这说明,在时间序列预测任务中,传统机器学习方法有时候还挺能打的。
GBRT模型,就像个明白事理的老江湖,每个决策点都清清楚楚,让人一看就懂。跟那些深不可测的深度学习模型比起来,它更接地气,容易让人信服。
说到计算效率,GBRT模型就像是轻功了得的侠客,行动迅速,不拖泥带水。深度学习模型可能还在慢吞吞地翻山越岭,它已经一溜烟跑到了目的地。
GBRT模型在特征工程上,就像个手艺高超的铁匠,能将普通的铁块锻造成锋利的宝剑。通过巧妙设计特征,它能够捕捉数据中的关键信息,让预测更加精准。
GBRT模型的灵活性,就像个能屈能伸的武林高手,无论面对什么样的对手,都能随机应变,调整自己的策略。通过调整参数,它能够适应各种不同的数据集和预测任务。
虽然GBRT模型在时间序列预测中表现出色,但它的威力还是得靠精心的特征工程和细致的参数调整来发挥。在实际应用中,得像打磨宝剑一样,细心调校,才能让它发挥出最大的威力。
特征工程,就像是给武林高手挑选武器,选对了,战斗力倍增。在时间序列预测中,通过提取时间、滚动统计、滞后等特征,能让模型更加敏锐地捕捉数据的脉动。
损失函数,就像是武林比武的规则,决定了比试的胜负。选择合适的损失函数,能让模型在训练中更加精准地找到自己的不足,从而不断进步。
通过实验,我们发现GBRT模型在特征工程和损失函数的选择上,展现出了极高的灵活性和适应性。就像武林高手在比武中不断调整自己的招式,GBRT模型也能通过精细的特征设计和合理的损失函数选择,显著提升自己的预测性能。
模型架构的创新,就像是武林中的绝世武功,听起来很酷,但练起来却难如登天。新架构往往需要大量的实验和调优,而且复杂性可能会带来更高的计算成本和更长的训练时间。
尽管如此,还是有些架构创新,像是武林中的奇遇,让人眼前一亮。比如LSTM的门控机制,就像是突然领悟了一门高深的内功心法,让模型在处理长时间依赖关系时更加得心应手。
研究表明,当特征工程和损失函数设置得当,架构创新带来的提升其实有限。这就像是武林中的基本功,只有基本功扎实了,才能让后续的招式发挥出更大的威力。
模型架构的创新,也伴随着一定的风险。新架构的复杂性可能会导致训练过程中的不稳定性,增加过拟合的风险,同时还可能需要更多的数据和计算资源。在实践中,如何平衡创新带来的潜在收益和这些风险,是一个需要仔细权衡的问题。
在时间序列预测中,把预测器包装成支持多输出的MultiOutputRegressor,就像是一箭双雕,提高了预测效率,同时还能捕捉不同时间序列之间的相互依赖。
但多输出预测也有它的局限性。由于所有输出都共享同一个模型结构和参数设置,这就像是用同一把钥匙开所有的锁,可能无法充分适应每个时间序列的独特性,导致预测精度下降。
为了克服这些局限,可以考虑在模型中增加更强的约束,就像是给每个锁配上一把专属的钥匙。通过引入分层模型结构,在顶层捕捉不同时间序列的共同特征,在底层分别建模每个时间序列的特有特征。
研究表明,通过引入这些改进措施,多输出预测模型在多个时间序列预测任务中取得了显著提升。这就像是武林中的高手,通过不断的修炼和创新,最终达到了新的境界。
在单变量时间序列预测任务中,GBRT模型就像是一匹黑马,无论是有协变量还是没有协变量,都展现出了优越的性能。特别是在没有协变量的情况下,通过合理的特征设计,GBRT模型能够有效捕捉时间序列中的趋势和波动,预测结果优于大多数深度学习模型。
在多变量时间序列预测任务中,GBRT模型与LSTNet、DeepAR、DeepState、TFT等深度学习模型相比,就像是武林中的一场较量,GBRT模型在大多数数据集上都取得了更高的预测精度。这主要归功于GBRT模型在特征工程和参数调整上的灵活性,使其能够更好地适应不同的数据特点和预测任务。
在有协变量的预测任务中,GBRT模型就像是得到了神助攻,通过合理利用协变量信息,能够进一步提升预测精度。例如,在能源消耗预测任务中,通过引入天气数据和历史用电量作为协变量,GBRT模型能够更准确地预测未来的能源需求。
总体来看,实验结果验证了GBRT模型在时间序列预测中的竞争力。尽管深度学习模型在某些特定任务中表现出色,但GBRT模型通过合理的特征设计和参数调整,在大多数情况下能够取得更高的预测精度和稳定性。
更多内容,见微*公号往期文章:
- 科研为国分忧,创新与民造福 -
日更时间紧任务急,难免有疏漏之处,还请大侠海涵内容仅供学习交流之用,部分素材来自网络,侵联删
这两天不知道是哪位大侠的神力相助
这个点今天新增关注就破 500 了
订阅读者总数直指 20000 大关
简直不要太 6 了
如果觉得内容有价值,烦请大侠多多 分享、在看、点赞,助力算法金又猛又持久、很黄很 BL 的日更下去;
同时邀请大侠 关注、星标 算法金,围观日更万日,助你功力大增、笑傲江湖