Autoformer: 一种基于自动相关机制的时序预测新架构

Autoformer: 一种基于自动相关机制的时序预测新架构

原创 大厂小僧 大厂小僧 2024年12月10日 18:33 北京

论文题目: Autoformer:Decomposition Transformers with

Auto-Correlation for Long-Term Series Forecasting

论文地址:https://openreview.net/pdf?id=I55UqU-M11y

今天给大家介绍一篇时序预测领域的重要算法——Autoformer,由李华等人于2020年提出,并发表于ICLR 2021Autoformer 采用全新分解架构,将序列分解模块嵌入深度模型内部,能够渐进地分解复杂的时间序列。同时,借鉴随机过程理论,设计了自动相关机制(Auto-Correlation Mechanism),在子序列级别发现依赖关系并进行信息聚合。该方法在长期预测中展现了优异的性能和计算效率。

接下来,我会按照Paper的框架对这篇文章进行解读。

1. Abstract

延长预测时间是实际应用中的关键需求,例如极端天气的提前预警和长期能源消耗规划。本文研究了时间序列的长期预测问题。现有基于 Transformer 的模型采用了各种自注意力机制来捕捉长距离依赖关系。然而,长期未来中复杂的时间模式使模型难以找到可靠的依赖。此外,Transformer 为了在处理长时间序列时提高效率,不得不采用稀疏的逐点自注意力机制,从而导致信息利用的瓶颈。为突破 Transformer 的限制,本文设计了 Autoformer,一种具有自动相关机制的全新分解架构。本文打破了传统的序列分解预处理方式,将其重新设计为深度模型的基本内部模块。此设计赋予了 Autoformer 渐进分解复杂时间序列的能力。此外,受随机过程理论的启发,基于时间序列的周期性设计了自动相关机制(Auto-Correlation Mechanism),在子序列级别进行依赖关系的发现和表示聚合。与自注意力机制相比,自动相关机制在效率和准确性上均表现出色。在长期预测任务中,Autoformer 在六个基准测试上实现了38% 的相对改进,涵盖了五个实际应用领域:能源、交通、经济、天气和疾病预测。

2. Introduction

时间序列预测广泛应用于能源消耗、交通和经济规划、天气预报以及疾病传播预测。在这些实际应用中,一个紧迫的需求是将预测时间扩展到更远的未来,这对于长期规划和提前预警具有重要意义。因此,本文研究了时间序列的长期预测问题,其特点是需要预测的时间序列长度较长。近年来,深度预测模型取得了显著进展,尤其是基于 Transformer 的模型。得益于自注意力机制,Transformer 在建模序列数据的长期依赖方面表现出色,从而支持构建更强大的大模型。

然而,在长期预测的设置下,预测任务极具挑战性。首先,直接从长期时间序列中挖掘时间依赖性并不可靠,因为这些依赖性可能被交织复杂的时间模式所掩盖。其次,传统的具有自注意力机制的 Transformer 模型在长期预测中计算成本极高,因为其序列长度的复杂度为二次方。此前的基于 Transformer 的预测模型主要集中于改进自注意力机制,使其成为稀疏版本。尽管这些模型显著提升了性能,但它们仍然采用逐点的表示聚合方法。因此,在提高效率的过程中,由于稀疏的逐点连接,这些模型会牺牲信息利用率,最终导致时间序列长期预测的瓶颈。

为了解释复杂的时间模式,尝试引入分解的理念,这是一种时间序列分析中的标准方法。分解可以用于处理复杂的时间序列并提取更可预测的组成部分。然而,在预测的背景下,由于未来数据未知,分解通常只能用作过去序列的预处理。这种常见的用法限制了分解的能力,并忽视了分解后各组成部分之间潜在的未来交互。因此,本文尝试突破分解作为预处理的传统用法,提出了一种通用架构,使深度预测模型具备渐进式分解的内在能力。此外,分解可以解开交织的时间模式,并突显时间序列的内在特性。基于这一点,作者尝试利用时间序列的周期性来改造自注意力中的逐点连接。观察到,在周期中相同相位位置的子序列通常呈现出相似的时间过程。因此,本文尝试基于时间序列周期性导出的过程相似性,构建一种基于序列级别的连接。

基于上述动机,本文提出了一种全新的 Autoformer,用于替代 Transformer 进行长期时间序列预测。Autoformer 仍然遵循残差和编码器-解码器结构,但将 Transformer 改造为一种分解预测架构。通过将提出的分解模块嵌入为内部操作单元,Autoformer 能够逐步从预测的隐藏变量中分离出长期趋势信息。此设计使模型能够在预测过程中交替进行分解和细化中间结果。受随机过程理论的启发,Autoformer 引入了一种 Auto-Correlation(自动相关)机制,替代传统的自注意力机制。该机制基于时间序列的周期性发现子序列的相似性,并从潜在周期中聚合相似的子序列。该序列级机制对长度为 L 的序列实现了 O(Llog⁡L) 的复杂度,并通过将逐点表示聚合扩展到子序列级别,突破了信息利用的瓶颈。Autoformer 在六个基准测试上实现了最先进的准确性。本文的主要贡献总结如下:

  • 为了解决长期未来复杂的时间模式问题,提出了 Autoformer 作为一种分解架构,并设计了内部分解模块,使深度预测模型具备内在的渐进式分解能力。

  • 提出了 Auto-Correlation(自动相关)机制,在序列级别进行依赖关系发现和信息聚合。该机制超越了以往的自注意力家族,能够同时提升计算效率和信息利用率。

  • 在长期预测任务中,Autoformer 在六个基准测试上实现了38% 的相对改进,覆盖了能源、交通、经济、天气和疾病等五个实际应用领域。

3. Related Work

3.1 Models for Time Series Forecasting

由于时间序列预测的重要性,各种模型得到了充分的发展。许多时间序列预测方法起源于经典工具。ARIMA通过差分将非平稳过程转化为平稳过程,以解决预测问题。滤波方法也被引入用于时间序列预测。此外,循环神经网络(RNN) 模型被用于建模时间序列的时间依赖性。DeepAR 结合了自回归方法和 RNN,用于建模未来

### 深度学习时序预测模型的输入结构设计 深度学习中的时序预测模型通常需要精心设计其输入结构,以便有效地捕捉时间序列数据中的特征和模式。以下是几种常见的时序预测模型及其输入结构的设计方法: #### 1. Informer 的输入结构设计 Informer 是一种专门针对长时间序列预测优化的 Transformer 变体[^1]。它的输入结构主要关注如何高效处理高维时间序列数据并减少计算开销。具体来说: - **输入长度控制**:为了降低内存消耗,Informer 使用了一种称为 Probabilistic Sparse Self-Attention (稀疏概率自注意力) 的机制,允许模型仅关注部分重要的历史时刻而非整个时间窗口。 - **多尺度表示**:通过引入生成对抗网络(GANs),Informer 能够自动提取不同频率下的特征。 #### 2. Autoformer 的输入结构设计 Autoformer 提出了一个的框架来解决长期时间序列预测问题[^3]。它利用了序列分解技术以及增强版的自相关机制来进行更精确的数据建模: - **序列分解模块**:将原始信号分为趋势项和季节性波动两部分分别处理后再重组合起来作为最终输出的一部分; - **自回归组件与外部变量支持**:除了常规的历史观测值外还可以加入额外的相关因素比如节假日效应或者气象条件等辅助信息进一步提升准确性; #### 3. DAFDC-RNN 的输入结构设计 DAFDC-RNN 结合了多种先进的神经网络设计理念构建了一个强大的端到端训练架构用于短期至中期范围内的电力负荷预报等问题求解过程中表现出优异性能[^4]: - 它采用了双向循环层堆叠而成的标准RNN形式配合门控单元实现记忆功能的同时还加入了target attention 和 full-dimension convolutional layers 来加强局部细节感知能力; - 时间注意(Temporal Attention Mechanism)则帮助区分不同时刻的重要性从而做出更加合理的决策. ```python import torch.nn as nn class Encoder(nn.Module): def __init__(self, input_size, hidden_size): super(Encoder, self).__init__() self.rnn = nn.LSTM(input_size=input_size, hidden_size=hidden_size) def forward(self, x): output, _ = self.rnn(x) return output class DecoderWithAttention(nn.Module): def __init__(self, ... ): ... def build_dafdc_rnn(): encoder = Encoder(...) decoder_with_attention = DecoderWithAttention(...) model = Seq2SeqModel(encoder, decoder_with_attention) return model ``` 以上代码片段展示了如何创建一个简单的编码器-解码器结构,并且可以扩展为目标注意力(Target Attention) 或者其他特定机制的应用实例之一。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

强化学习曾小健

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值