⌈ 传知代码 ⌋ 基于深度学习的高效时序预测

前情提要

本文是传知代码平台中的相关前沿知识与技术的分享~

接下来我们即将进入一个全新的空间,对技术有一个全新的视角~

本文所涉及所有资源均在传知代码平台可获取

以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦!!!

以下内容干货满满,跟上步伐吧~


💡本章重点

  • 基于深度学习的高效时序预测

🍞一. 概述

2022年,清华大学软件学院的学者提出了Autoformer:用于长期时间序列预测的自相关分解Transformer延长预测时间是实际应用的关键需求,如极端天气预警和长期能耗规划。本文研究了时间序列的长期预测问题。先前的基于 Transformer 的模型采用各种自注意力机制来发现长期依赖关系。然而,长期未来复杂的时间模式禁止模型找到可靠的依赖关系。

本文通过对Transformer进行改进,通过序列分解和全新的自相关机制对时序数据进行建模,在各种公开的数据集上达到了很好的效果


🍞二. 论文思路

为了解决长期未来复杂的时间模式,作者将Autoformer作为分解体系结构,通过设计内部分解模块,使深度预测模型具有内在的渐进分解能力。同时作者提出了一种在序列级别上具有依赖关系发现和信息聚合的自相关机制。我们的机制超出了以前的自注意力家族,可以同时提高计算效率和信息利用率。

论文模型

作者改进了经典的Transformer模型,包括内部序列分解块、自相关机制以及相应的编码器和解码器。

(1).作者首先通过原数据减去池化平均项,获得分解项备用

(2).编码器,待训练的原始时序数据经过自相关机制,时序分解模块,前馈神经网络以及再一次时序分解模块获得编码器的结果,其中,从输入到第一个时序分解和从第一个时序分解模块到最后一个有一个残差连接。

(3).解码器,将(1)中获得的分解项和(2)的输出结果一并输入到解码器中,解码器会经过两次自相关机制和时序分解,在第二次自相关中会接受来自编码器的输出和自身模型前一个阶段的输出同时作为输入。最后经过前馈网络和序列分解。其中每一个序列分解都会加入原始的序列数据作为残差连接。


🍞三.实现方法

1.TimesDecomp

主要是对原始项进行池化得到池化项,在相减获得剩余项,由此进行序列分解

2.Auto-Correlation

作者提出了具有串联连接的自相关机制来扩展信息利用率。自相关通过计算序列自相关来发现基于周期的依赖关系,并通过时间延迟聚合聚合相似的子序列。

类似Transformer 输入的数据经过Linear层变换得到Query,Key,Value.不同于attention机制,Q,K经过快速傅里叶变换后 K经过共轭操作和Q相乘后,经过傅里叶反变换,和V做 time delay agg 操作。

3.time delay agg操作基于所选时间延迟

τ1,···,τk对序列进行滚动。该操作可以对齐在估计周期的同一相位位置相似的子序列,这与自我注意家族中的逐点点积聚合不同。最后,我们通过 softmax 归一化置信度聚合子序列。

4.前馈网络(FFN)

与前向传播类似,包含多层感知机(MLP)和归一化层(LN)。

损失函数:L1 loss 和 L2 loss,或二者结合。


🍞四.复现论文

训练演示截图

训练结果,使用的ETTm2 数据集可以看到和论文中的数字相差不大


🫓总结

综上,我们基本了解了**"一项全新的技术啦"** :lollipop: ~~

恭喜你的内功又双叒叕得到了提高!!!

感谢你们的阅读:satisfied:

后续还会继续更新:heartbeat:,欢迎持续关注:pushpin:哟~

:dizzy:如果有错误❌,欢迎指正呀:dizzy:

:sparkles:如果觉得收获满满,可以点点赞👍支持一下哟~:sparkles:

【传知科技 -- 了解更多新知识】

相关推荐
EterNity_TiMe_12 分钟前
【论文复现】(CLIP)文本也能和图像配对
python·学习·算法·性能优化·数据分析·clip
机器学习之心23 分钟前
一区北方苍鹰算法优化+创新改进Transformer!NGO-Transformer-LSTM多变量回归预测
算法·lstm·transformer·北方苍鹰算法优化·多变量回归预测·ngo-transformer
yyt_cdeyyds34 分钟前
FIFO和LRU算法实现操作系统中主存管理
算法
alphaTao1 小时前
LeetCode 每日一题 2024/11/18-2024/11/24
算法·leetcode
kitesxian1 小时前
Leetcode448. 找到所有数组中消失的数字(HOT100)+Leetcode139. 单词拆分(HOT100)
数据结构·算法·leetcode
VertexGeek2 小时前
Rust学习(八):异常处理和宏编程:
学习·算法·rust
石小石Orz2 小时前
Three.js + AI:AI 算法生成 3D 萤火虫飞舞效果~
javascript·人工智能·算法
jiao_mrswang3 小时前
leetcode-18-四数之和
算法·leetcode·职场和发展
qystca3 小时前
洛谷 B3637 最长上升子序列 C语言 记忆化搜索->‘正序‘dp
c语言·开发语言·算法
薯条不要番茄酱3 小时前
数据结构-8.Java. 七大排序算法(中篇)
java·开发语言·数据结构·后端·算法·排序算法·intellij-idea