Autoformer 架构详细解释及举例说明

在这里插入图片描述

Autoformer 架构详细解释

上述图片展示了 Autoformer 架构的工作流程,包含编码器和解码器的结构。我们来详细解析图中的各个组件及其功能:

编码器部分(Autoformer Encoder)
  1. 输入数据(Encoder Input)

    • 输入的是需要预测的时间序列数据。
  2. 自动相关机制(Auto-Correlation)

  3. 序列分解模块(Series Decomp)

  4. 前馈网络(Feed Forward)

  5. 多层堆叠(N×)

    • 编码器由多个这样的模块堆叠组成,以增强特征提取和建模能力。
解码器部分(Autoformer Decoder)
  1. 季节性初始化(Seasonal Init)

    • 初始季节性部分设为零(Zero),表示开始时没有特定的季节性模式。
  2. 趋势-周期性初始化(Trend-cyclical Init)

    • 初始趋势部分设为输入数据的均值(Input Data Mean),作为趋势累积的起点。
  3. 自动相关机制(Auto-Correlation)

    • 绿色模块,解码器的自动相关机制帮助利用编码器传递的季节性信息。
    • 这一模块在解码器中再次检测并利用时间序列中的周期性依赖关系。
  4. 序列分解模块(Series Decomp)

    • 解码器中的蓝色模块继续对数据进行分解,处理趋势和季节性成分。
  5. 前馈网络(Feed Forward)

    • 红色模块,前馈网络进一步处理分解后的数据,提取更多特征。
  6. 多层堆叠(M×)

    • 解码器也由多个这样的模块堆叠组成,以增强特征提取和预测能力。
  7. 预测输出(Prediction)

    • 解码器最终生成预测结果,将所有处理过的信息结合起来。

详细步骤解析

  1. 时间序列输入

    • 原始时间序列数据被输入到编码器中进行处理。
  2. 编码器处理

    • 自动相关机制:检测并利用时间序列中的周期性依赖关系,融合相关信息。
    • 序列分解模块:将时间序列分解为季节性和趋势-周期性成分,去除长周期趋势,专注于季节性模式。
    • 前馈网络:处理分解后的序列,提取更多特征,并再次分解细化。
    • 编码器的这些处理过程在多个堆叠层中重复,以提取更丰富的特征。
  3. 解码器初始化

    • 季节性初始化设为零,趋势初始化设为输入数据的均值。
  4. 解码器处理

    • 解码器同样使用自动相关机制和序列分解模块处理数据。
    • 每个步骤包括自动相关检测、序列分解和前馈网络处理,逐步累积趋势成分。
    • 自动相关机制在解码器中利用编码器传递的季节性信息,增强预测能力。
  5. 预测生成

    • 最终,解码器将所有处理过的信息结合起来,生成对未来时间序列的预测。

总结1

Autoformer 通过嵌入分解模块和自动相关机制,解决了长期时间序列预测中的复杂性。编码器去除长周期趋势,专注于季节性模式建模;解码器则逐步累积趋势信息,并利用编码器传递的季节性信息进行预测。这个架构有效提升了时间序列预测的准确性和效率。

Autoformer 架构详细解释及具体数据举例

我们将使用具体的数据示例来详细说明 Autoformer 架构的全流程,包括编码器、解码器、序列分解模块和前馈网络的工作过程。

假设我们有如下的时间序列数据,表示某个商店的月度销售额(单位:千元):

月份销售额 (千元)
2019年1月100
2019年2月120
2019年3月130
2019年4月150
2019年5月170
2019年6月180
2019年7月190
2019年8月200
2019年9月220
2019年10月230
2019年11月240
2019年12月260
2020年1月130
2020年2月140
2020年3月160
2020年4月180
2020年5月170
2020年6月190
2020年7月200
2020年8月210
2020年9月220
2020年10月230
2020年11月240
2020年12月260

编码器部分(Autoformer Encoder)

  1. 输入数据(Encoder Input)

    • 输入的是要预测的时间序列数据。
  2. 自动相关机制(Auto-Correlation)

    • 计算自相关函数来检测时间序列中的周期性依赖关系。
    • 例如,检测到每年有一个周期性模式。
  3. 序列分解模块(Series Decomp)

    • 将时间序列分解为季节性部分和趋势-周期性部分。
  4. 前馈网络(Feed Forward)

    • 对分解后的序列进行非线性变换,提取更多特征。
  5. 多层堆叠(N×)

    • 编码器由多个这样的模块堆叠组成,以增强特征提取能力。
示例:编码器处理流程
  1. 序列分解

    • 假设我们使用移动平均法和傅里叶变换来分解序列。

    • 趋势部分:

      月份趋势 (千元)
      2019年1月160
      2019年2月165
      2019年3月170
      2019年4月175
      2019年5月180
      2019年6月185
      2019年7月190
      2019年8月195
      2019年9月200
      2019年10月205
      2019年11月210
      2019年12月215
      2020年1月220
      2020年2月225
      2020年3月230
      2020年4月235
      2020年5月240
      2020年6月245
      2020年7月250
      2020年8月255
      2020年9月260
      2020年10月265
      2020年11月270
      2020年12月275
    • 季节性部分:

      月份季节性 (千元)
      2019年1月-60
      2019年2月-45
      2019年3月-40
      2019年4月-25
      2019年5月-10
      2019年6月-5
      2019年7月0
      2019年8月5
      2019年9月20
      2019年10月25
      2019年11月30
      2019年12月45
      2020年1月-90
      2020年2月-85
      2020年3月-70
      2020年4月-55
      2020年5月-70
      2020年6月-55
      2020年7月-50
      2020年8月-45
      2020年9月-40
      2020年10月-35
      2020年11月-30
      2020年12月-15
  2. 前馈网络处理

    • 对趋势和季节性成分进行非线性变换,例如:
      • 输入向量 x t = [ 趋势 t , 季节性 t ] x_t = [\text{趋势}_t, \text{季节性}_t] xt=[趋势t,季节性t]
      • 经过前馈网络,得到处理后的特征向量 h 2 , t h_{2,t} h2,t

解码器部分(Autoformer Decoder)

  1. 季节性初始化(Seasonal Init)

    • 初始季节性部分设为零(Zero),表示开始时没有特定的季节性模式。
  2. 趋势-周期性初始化(Trend-cyclical Init)

    • 初始趋势部分设为输入数据的均值(Input Data Mean),作为趋势累积的起点。
  3. 自动相关机制(Auto-Correlation)

    • 利用编码器传递的季节性信息进行处理。
  4. 序列分解模块(Series Decomp)

    • 解码器继续对数据进行分解和处理。
  5. 前馈网络(Feed Forward)

    • 对分解后的数据进行进一步处理,提取更多特征。
  6. 多层堆叠(M×)

    • 解码器由多个这样的模块堆叠组成,以增强特征提取和预测能力。
示例:解码器处理流程
  1. 初始化

    • 季节性初始化设为零。
    • 趋势初始化设为输入数据的均值。
  2. 自动相关机制

    • 利用编码器的输出,检测并聚合周期性依赖关系。
  3. 序列分解和前馈网络

    • 对输入进行分解,提取和处理特征。

最终预测

通过编码器和解码器的多层处理和特征提取,最终生成对未来时间序列的预测。例如,预测2021年1月至12月的销售数据:

月份预测销售额 (千元)
2021年1月135
2021年2月145
2021年3月165
2021年4月185
2021年5月175
2021年6月195
2021年7月205
2021年8月215
2021年9月225
2021年10月235
2021年11月245
2021年12月265

总结2

通过这个具体数据的例子,我们详细展示了 Autoformer 架构中各个部分的工作流程。编码器通过序列分解和前馈网络提取特征,解码器利用这些特征生成预测。整个过程通过多层处理和自动相关机制的应用,有效地捕捉了时间序列中的趋势和季节性模式,提高了预测的准确性。

  • 25
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值