Redian新闻
>
深度学习与时间序列预测:来自Kaggle比赛的宝贵经验

深度学习与时间序列预测:来自Kaggle比赛的宝贵经验

财经

量化投资与机器学习微信公众号,是业内垂直于量化投资、对冲基金、Fintech、人工智能、大数据领域的主流自媒体公众号拥有来自、私募、券商、期货、银行、保险、高校等行业30W+关注者,荣获2021年度AMMA优秀品牌力、优秀洞察力大奖,连续2年被腾讯云+社区评选为“年度最佳作者”。


作者:Ignacio Oguiza        编译:1+1=6


前言


深度学习在时间序列预测中的重要性不断增强。神经网络第一次在Kaggle时间序列竞赛中位列前3名是在2015年(Rossmann store sales)。从那时起,神经网络就越来越常见地出现在排行榜的头部。而且这种趋势还在继续。事实上,在最近的Ventilator Pressure Prediction时间序列比赛中,前15名的队伍使用了神经网络。


两年前,作者创建了tsai深度学习库,以便于使用最先进的深度学习模型和方法对时间序列数据进行建模与预测。



当上次Kaggle时间序列比赛结束时,我很想知道顶级队伍是如何取得如此优异的成绩的。因此,作者查阅了15个金牌获得者团队发布的所有解决方案。这里有一些关键的发现。



比赛简介


在过去的两个月里,Kaggle举办了谷歌脑呼吸机压力预测比赛。目的是模拟一个连接到镇静剂患者肺部的呼吸机。更具体地说,参与者必须预测在每次呼吸的吸气阶段肺部的压力。


数据集由大约125k次模拟呼吸组成,其中60%被标记(训练数据)。每次呼吸有80个不规则采样的时间步,每个时间步有5个特征。训练集中的每一次呼吸都有一个80步的序列目标(压力)。我们的目标是在测试数据中预测每次呼吸的序列。关键指标为平均绝对误差(MAE)。




重要发现


明确任务


是一个序列到序列的任务,两个序列并行发生。有趣的是,目标并不是完全连续的。每个目标步骤都是float类型,只有950个可能的值。正如预期的那样,大多数顶级团队将这个问题作为回归任务来处理。然而,一些金牌得主成功地将比赛作为一个分类任务处理。他们预测了950种类型的概率。我很惊讶地发现分类方法如此有效。你可以用你自己的数据集试试!(如果你的数据是连续的,你总是可以创建离散目标箱)。


特征


Top团队使用了三种不同的方法:


  • 只用原始特征。只有获胜的团队在他们的一个模型中成功地使用了这种方法。为了弥补特征的少量,他们使用了大量的epoch (2.5k)。

  • 原始特征加上人为定义的特征。大多数团队都遵循这条路线,通常会增加几十个特征。精心设计的、人工定义的特征可以帮助模型更快地聚合,因此需要的时代更少。人工设计的特征提供了利用专家领域知识提高性能的机会。

  • 原始特征+人工定义的特征+机器学习出来的特征。一些团队将输入信息通过一个具有多个卷积层的特征提取器来学习新特征。每个卷积层使用不同的核大小。



▌模型


LSTM和Transformer霸占了排行榜,而CNN和增强树模型没有竞争力。


所有Top团队都使用了神经网络(深度学习)。与其他领域不同,增强树没有竞争力。没有一个最好的解决方案包括增强树。


主要使用的模型包括:


1、Stacked bidirectional LSTMs(一种递归神经网络)主导了这场竞赛。几乎所有的金牌得主都使用了LSTM模型的预测作为他们最终组合的一部分。如前所述,一些团队通过在LSTM层之前添加特征提取器来构建混合模型。



2、有些团队使用了Transformer,但有些团队说Transformer的效果不如LSTM。在使用Transformer达到理想效果的方案中,Transformer模型只使用了编码器部分,而没有位置编码,因为时间已经是特征之一。另外两个定制化的步骤是在Transformer之前添加卷积层和跳跃层。



自定义损失函数


自定义损失函数是Top团队胜利的重要因素!


比赛使用MAE(平均绝对误差)作为评估标准。因此,大多数参与者使用L1Loss或相关的loss(HuberLoss、SmoothL1Loss等)。然而,几乎所有Top团队都使用了带有辅助损失的多任务学习。他们在原有目标的基础上增加了新的目标,以减少过拟合,提高泛化效果。


如前所述,这里的目标是具有80个时间步的压力序列。然而,顶级团队修改了它来预测次要目标,比如:


  • 当前时间步与以前时间步(间隔1到4步)之间的压力差,或

  • 每个时间步的累积压力,或

  • 每个时间步长的压力方差


压力差和累积压力的加入,迫使模型学习目标及其导数和积分,提高了模型的性能。




▌框架和硬件


当然大部分团队建模选用的框架是TensorFlow或Pytorch,Scikit-learn主要用在数据预处理和交叉验证的环节。TPU和GPU也非常重要,因为一个fold的训练经常要花费数小时。


数据增广


数据增广是减少过拟合最好的方法。


很少有团队能够使用数据增广的方法。但那些使用了数据增广的团队都显著提高了模型的效果。主要的数据增广的方法有:


  • Random shuffling of nearby time steps (based on a rolling window).



  • Random masking. During training, one of the categorical variables was set to zero.



  • Mixup



模型训练


Top团队使用大量的epoch来训练他们的模型(通常在150到300之间,尽管有些人使用了高达2.5k!),它们都使用了一些学习速率调度器。Cosine Annealing和ReduceLROnPlateau 是最常用的两种方法。至少有一个团队声称使用Cosine Annealing With Warm Restarts.可以显著提高性能。


复合模型


复合模型经常出现在Kaggle比赛中。这在这里非常重要。原因是,当你使用平均绝对误差(MAE)来评估一个预测时,通常使用中值比平均值更好。中值只有在有很多值的时候才准确。


所有Top团队都创建了一个或多个强大的模型,并运行:


  • 多重折叠(10到15 folds)

  • 或使用不同种子的所有训练数据

  • 或者两者的结合后处理。金牌获得者使用了三种主要技术。


Pseudo-labels


一些最好的解决方案还利用未标记的数据集来生成额外的标签。与上面描述的其他技术相比,这种技术的改进并不大。



结论


时间序列领域与计算机视觉和NLP的一样,神经网络逐渐的占据了主导地位。


神经网络加上领域专家知识可以显著提高时间序列任务的性能。近年来,深度学习在时间序列中的应用发展迅速。它已经成熟,所以现在是开始使用它来解决时间序列问题的好时机。

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
热植:来自雨林的明信片报告老板!GGV 非正经工作报告已出炉 | GGVictory【星星点灯 露一手】晒民国舞姿, 女神节快乐!与时聚汇 | 疫情时代:民粹主义与高等教育你是悲观派还是乐观派?科学家预测:未来五年全球人类生活的三种可能性[视听] 厚脸皮借用器材第二弹:Eggleston艾格斯顿Isabel伊莎贝尔音箱澳洲房市或崩盘?专家预测:墨尔本房价未来18个月内或大幅暴跌!预留学 | 一键解锁丹麦学习与生活Behind China’s New Botanical Garden, a Decadeslong Struggle斯隆奖得主方飞:当深度学习和博弈论相结合,能解决哪些社会问题?职业病防治应与时俱进,可将心理危害因素纳入考量丨南周快评ICLR 2022 | 微软亚洲研究院深度学习领域最新研究成果一览A16z的预测:将改变生物技术和医疗保健的 16 大趋势宋志平:企业家精神是企业最宝贵的财富Gary Marcus公开喊话Hinton、马斯克:深度学习就是撞墙了,我赌十万美金暑期时间宝贵!规划就趁现在!耐得住寂寞,是一种很宝贵的品质!贝叶斯深度学习:一个统一深度学习和概率图模型的框架China’s Cinemas Are Struggling大卫·阿贾耶:来自非洲的普奖候选人,一位拥有“玫瑰之心”的建筑外交官宝贵研究成果资料留存不全,该如何证明自己符合EB-1申请标准?快手单季运营亏损56亿:来自直播收入78亿 占营收比37%人类基因组中来自病毒的序列有多少?2.4亿对我学语文教语文的一生(27)最讨厌拉帮结派欺负人家为了保住墨尔本这个网红景点,一场与时间赛跑的大作战终于要开始了突发 ◇ 美联储或加息0.75%!加国央行预测:房贷利率4.5%持续到2027年!学习与思考Happy Women's Day彭博行业研究 | 欧盟碳边境税:覆盖范围与时间节点要来了!CBA最新预测:墨尔本房价要跌18%!First hive inspection of the year! / 冬末春初,开箱查蜂!华尔街大佬惊人预测:史上“最大熊”将至? 视频盘点美股历次股灾专家预测:墨尔本房价要开始跌了?邓力:转动语音深度学习飞轮的人 | 深度学习崛起十年
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。