点关注,不迷路,用心整理每一篇算法干货~

后台留言”交流“,加入圆圆算法交流群~
后台留言”星球“,加入圆圆算法知识星球~

今天介绍的这篇文章来自华南理工大学,提出了一种基于RNN的长周期时间序列预测模型,取得了优于SOAT Transformer系列模型的效果。


论文标题:SegRNN: Segment Recurrent Neural Network for Long-Term Time Series Forecasting

下载地址https://arxiv.org/pdf/2308.11200v1.pdf

1

背景

在长周期时间序列预测任务中,Transformer系列模型占据主导地位,而基于RNN的模型逐渐销声匿迹。其主要原因在于,RNN是串行计算的,长周期预测需要串行迭代多轮,计算复杂度高,并且随着迭代的进行,时间序列的信息不断损失,影响最终预测。在Decoder阶段,RNN的串行方式也会造成误差累积问题。

那么,RNN这种天生适用于时间序列建模的模型架构,真的无法有效应用于长周期时间序列预测吗?这篇文章提出了一种简单的基于RNN的长周期时间序列预测模型,在Encoder阶段,采用切片的方式减少串行数量;在Decoder阶段采用并行多步预测的方式缓解误差累积问题。

2

Encoder切片

传统RNN模型中,以每个时间步为基础单元迭代计算,这种方式在长周期预测会导致过长的迭代路径。为了缓解这个问题,本文借鉴了PatchTST的思路,提出了对时间序列先分片,再输入RNN的方式。

具体来说,首先将时间序列分成多个片段,每个片段经过全连接+激活函数层进行编码,以生成的Embedding作为RNN的输入。RNN的具体模型采用了GRU的计算方式。整体的Encoder结构如下左图所示。

3

Decoder并行预测

对于Decoder,文中采用了并行预测的方式。以往的RNN在Decoder阶段,经常会以上一个时刻的预测结果作为下一个时刻的输入,存在误差累积问题,且计算效率低。为了解决这个问题,本文直接改成了多步并行预测的方式,将Encoder的编码结果输入到多个MLP层,并行的得到多个时间步的预测结果。

这种方式会导致模型无法感知每个时间步的序列顺序。为了解决这个问题,文中在Decoder部分加入了position embedding。此外,由于采用了多变量独立的建模方式,文中进一步为每个序列增加了channel的position embedding。这两类position embedding,和Encoder的编码结果拼接到一起,接MLP得到预测结果。

4

实验结果

文中对比了本文提出的模型,与RNN类型模型、Transformer类型模型、CNN类型模型、Linear类型模型等4类模型的效果。首先在RNN模型中,本文提出的方法效果要大幅超越DeepAR、GRU这类方法。在于SOTA的Transformer类型模型的对比中,也具有很大的优势。验证了使用RNN也能解决长周期的时间序列预测问题。

END



后台留言”交流“,加入圆圆算法交流群~
后台留言”星球“,加入圆圆算法知识请星球~
知识星球提供一文贯通笔记、经典代码解析、问答服务、新人入门,已有460+小伙伴加入,价格随星球人数增加和资料丰富上涨,将于9.1上调至198,感兴趣的同学尽早加入~


加交流群请加微信,备注机构+方向拉群~

【历史干货算法笔记】
Sptial-Temporal时空预测总结:建模思路、优化方法梳理
时序预测顶会论文数据集、数据处理方法、训练方法汇总
时间序列预测实战方法概述:从数据到模型
Informer模型结构和代码解析
基于Transformer的时序预测模型TFT代码详解
时空预测经典模型STGCN原理和代码解读
一网打尽:14种预训练语言模型大汇总
Vision-Language多模态建模方法脉络梳理
花式Finetune方法大汇总
NLP中的绿色Finetune方法
从ViT到Swin,10篇顶会论文看Transformer在CV领域的发展历程
缺少训练样本怎么做实体识别?小样本下的NER解决方法汇总

如果觉得有帮助麻烦分享在看点赞~  

内容中包含的图片若涉及版权问题,请及时与我们联系删除