用Transformer做多元时序预测的最佳方法?

Transformer如何应用于时间序列预测一直是近期探讨的一个核心问题,这里包括多变量建模的处理方式、Transformer的结构等。在DLinear中,提出了用线性模型打败Transformer模型;在后来的PatchTST等工作中,又验证了Transformer的有效性。那么,到底如何使用Transformer进行时间序列预测效果最好呢?

图片

近期华南理工大学发表了PETFormer,这篇文章主要从两个角度探索了Transformer如何应用于时间序列预测,一方面是Transformer的结构上,提出了Placeholder-enhanced结构;另一方面是多变量关系建模上,探索了最有效的建模方式。

下面,将从输入数据构建、Transformer结构、多变量关系建模3个角度介绍一下本文的核心工作。

图片

论文标题:PETformer: Long-term Time Series Forecasting via Placeholder-enhanced Transformer

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

1

输入数据构造

时间序列和NLP不同,NLP每个token就有明确的语义含义,而时间序列每个点并没有明确含义,需要结合上下文信息才能体现出来。因此,本文仍然沿用了PatchTST的方式,将时间序列分成多个patch,每个patch分别生成embedding。和PatchTST的差别是,文中使用了更大的子序列长度,这样一方面可以提升运算效率,另一方面也让每个patch的语义信息更加明确。

此外,文中也使用RevIN的方式,对输入序列进行了归一化处理。

2

Transformer结构

在Transformer结构上,本文提出了placeholder-enhanced的方式。在原来的Encoder-Decoder结构中,预测序列和历史序列被分割成两个部分分别由Encoder和Decoder建模,再通过cross-attention建立联系。这个过程会使历史序列的信息出现损失,无法完美应用到Decoder中。

为了解决这个问题,文中采用了placeholder-enhanced的方式,在Decoder部分使用几个可学习的向量作为输入,不再区分Encoder和Decoder,而是拼接到历史序列的token上,一起输入到统一Transformer,让待预测部分可以更自然的获取历史序列信息。

图片

在attention的计算方式上,文中尝试了如下4种attention计算方式:

Full attention:每个节点做双向attention

No inter-future attention:未来序列部分内部不做attention

No inter-history attention:历史序列部分不做attention,相当于未来序列和历史序列每个token独立进行attention

Only future focuses on history:只有未来序列和历史序列做attention,未来序列和历史序列内部都不做attention

图片

3

多变量建模方法

在上述的过程中,每个变量是独立建模的,建模过程中没有考虑到各个变量之间的关系,和PatcchTST类似。但是,各变量的关系是有额外信息增益的,因此本文增加了一个Inter-channel Interaction模块,在每个变量独立进行时间维度建模后,再进行一次多变量间关系建模。

具体的建模方式,文中也尝试了4种类型:

No channel interaction:每个变量独立,不建模变量间关系

Self-attention:变量间使用self-attention建模

Channel identifier:每个channel用一个可学习的向量,和token计算关系

Cross-attention:结合每个channel的token和identifier进行attention

在这里插入图片描述

4

实验结果

文中对多个组件进行了消融实验,分析不同模块设计对最终效果的影响。

在模型结构方面,整体结果如下表,使用PET的方式比Encoder-Decoder等结构效果要好,同时full attention的方式要优于其他attention方式。

图片

对于patch内子序列长度的选择,可以看出子序列长度越大,整体效果越好:

图片

对于多变量关系建模方面,直接将channel融合到一起输入Transformer的效果最差,而其他的各种将channel间信息交互与时序建模分开的方式效果基本不相上下。但是整体来看仍然是不用channel间交互的方式效果会稍好一些。文中认为channel间关系难以建模是导致引入channel间关系建模效果效果提升不明显的原因。

图片

图片

如何学习大模型

现在社会上大模型越来越普及了,已经有很多人都想往这里面扎,但是却找不到适合的方法去学习。

作为一名资深码农,初入大模型时也吃了很多亏,踩了无数坑。现在我想把我的经验和知识分享给你们,帮助你们学习AI大模型,能够解决你们学习中的困难。

我已将重要的AI大模型资料包括市面上AI大模型各大白皮书、AGI大模型系统学习路线、AI大模型视频教程、实战学习,等录播视频免费分享出来,需要的小伙伴可以扫取。

一、AGI大模型系统学习路线

很多人学习大模型的时候没有方向,东学一点西学一点,像只无头苍蝇乱撞,我下面分享的这个学习路线希望能够帮助到你们学习AI大模型。

在这里插入图片描述

二、AI大模型视频教程

在这里插入图片描述

三、AI大模型各大学习书籍

在这里插入图片描述

四、AI大模型各大场景实战案例

在这里插入图片描述

五、结束语

学习AI大模型是当前科技发展的趋势,它不仅能够为我们提供更多的机会和挑战,还能够让我们更好地理解和应用人工智能技术。通过学习AI大模型,我们可以深入了解深度学习、神经网络等核心概念,并将其应用于自然语言处理、计算机视觉、语音识别等领域。同时,掌握AI大模型还能够为我们的职业发展增添竞争力,成为未来技术领域的领导者。

再者,学习AI大模型也能为我们自己创造更多的价值,提供更多的岗位以及副业创收,让自己的生活更上一层楼。

因此,学习AI大模型是一项有前景且值得投入的时间和精力的重要选择。

  • 21
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值