First De-Trend then Attentd: Rethinking Attention for Time-Series Forecasting

news2024/11/25 10:56:52

论文题目:重新思考注意力在时间序列预测任务中应用

作者单位:亚马逊 访问学者、亚马逊云科技

摘要:

基于Transformer的一系列方法在长时间序列预测任务中很有效,除了在时域部分学习注意力外,最近的工作也在频域中探索注意力的学习,(使用傅立叶变换、小波变换)。使得模型能够学习季节性的特征。本文试图去理解注意力模型之间的关系,即使这些模型被应用在不同的时域和频域中。理论上,注意力机制在不同的域是等效的,因为,使用的是相同的线性核。实验结果证明,本文分析了注意力模型在不同的域中有着不同的表现,这些表现也是通过接入不同的合成实验,季节、趋势、噪声,并且特别强调了softmax操作的重要性。也是通过结合理论和实验的分析,本文提出了TDformer,趋势分解的Transformer。第一次使用季节趋势分解,然后结合多层感知机,用于预测傅立叶注意力的趋势组成,而傅立叶注意力是用来预测季节成分从而获取最终的预测结果。在benchmark 的时间序列数据集上的实验显示 TDFormr实现了sota的结果,与现有的注意力模型相比。

季节可以理解为周期

引言

Transformer在时间序列预测任务中表现很棒,它从自然语言处理到CV迁移到时间序列预测,长距离依赖的获取能力使得它在时间序列预测任务中表现也很棒。部分工作使用的是原始的Transformer机制,在时域上进行计算,而最近出现的各种不同的Transformer的变体都是在频域上进行计算。(傅立叶域或者是小波域),用于更好的建模全局特征。

尽管它很棒,但仍然缺乏首屈一指的规则来选择在哪个域,哪个注意力是最好的。本文更好的理解了以下几个问题:在某个域内,注意力学习是否比其他的方式提供了更丰富的特征表征?如果是这样的,怎样实现的呢?本文中显示了数学公式化的线性条件,使得时间域和频域中的注意力学习有着相同的表征能力。接着,由于softmax的非线性映射和正则化,理论上的线性相等并不成立。更特别的是,注意力模型在不同域上表现出不同的实验优势。这个发现揭示了面对不同的任务场景如何选择更好的注意力模型。基于这些insight结果,证明方法的sota。
figure1
可视化第一张图,显示了TDFormer同FEDformer的性能对比,在Weather数据集上有着更优的效果。

更具体的,三个发现:
(1)具有强季节性的数据,频域注意力模型的能力较时域注意力模型而言更为好用,因为softmax将傅立叶空间的频域的主频信号做了放大。
(2)对于有趋势的数据,注意力模型通常表现出较差的泛化能力,这是因为注意力是通过内插进行建模,而非向外推断上下文。所以积极探索趋势型数据的季节趋势非常有必要。
(3)对于具有噪声尖峰的数据集,频域注意力模型会更加的robust,因为尖峰数据的高频幅值小,通过sofrmax操作可以将它滤掉。

所以,多样化的注意力模块在季节型和趋势型的数据上表现不同,所以TDformer在最开始就将context 时间序列分解为趋势和季节,两部分。使用多层感知机预测未来趋势,使用傅立叶注意力机制预测有季节性的部分数据,将这两部分预测结果融合为一体,得到最后的预测结果。
综上,本文的贡献如下:
(1)理论上证明注意力机制在线性条件下,时域和频域上有着相同的表征能力。
(2)实验分析了注意力模型在不同的合成数据特征的不同域中,softmax的非线性作用很重要。使得级联网络需要分解信号,按照不同种类使用不同方法处理。
(3)提出的TDformer使用MLP+Fourier attention 实现了sota效果。

相关工作:

TimeDomain attention:
Informer,AutoFormer,Non-stationary Transfomer(三篇经典)
FrequencyDomain attention:
FEDFormer,ETSformer,AFNO,FNet,T-WaveNet, AWT-Net
Decomposition Forescasting:
N-BEATS,N-HiTS,FreDo,FiLM,DeepFS

尽管注意力机制在时间、傅立叶、小波域有着成功的应用,但对于注意力和域的关系和优势依然不清晰,基于分解的方法也提出分解层,没有考虑强大的推理能力。本文就是要填补理论和实践之间沟壑,基于分析提出一个新的框架并且显示出了好的预测效果。

不同域中注意力的线性相等

来个经典自注意力:
o ( q , k , v ) = σ ( q k T d q ) v o(q,k,v)=\sigma(\frac{qk^{T}}{\sqrt{d_q}})v o(q,k,v)=σ(dq qkT)v
这里考虑激活函数 σ ( ) \sigma() σ() 如果是softmax函数,称为softmax注意力,若是线性层,就变成线性注意力,
定义3.1:时间域的注意力机制,所有的qkv都在时间域内打转。
定义3.2:傅立叶频域的注意力机制,所有的qkv都通过傅立叶变换来求取,最后使用傅立叶反变换将数据从频域转回时间域。
看公式较为清楚:
o ( q , k , v ) = F − 1 ( ( σ ( F ( q ) F ( k ) ‾ T ) d q ) F ( v ) ) o(q,k,v)=F^-1((\sigma(\frac{F(q) \overline{F(k)}^T)}{\sqrt{d_q}})F(v)) o(q,k,v)=F1((σ(dq F(q)F(k)T))F(v))
定义3.3:小波域中的注意力机制,这个得,看公式吧
o ( q , k , v ) = W − 1 ( ( σ ( W ( q ) W ( k ) ‾ T ) d q ) W ( v ) ) o(q,k,v)=W^-1((\sigma(\frac{W(q) \overline{W(k)}^T)}{\sqrt{d_q}})W(v)) o(q,k,v)=W1((σ(dq W(q)W(k)T))W(v))
其中F,W指的是傅立叶变换,小波变换,而-1指代逆变换,其实二者只是基底不同。

Sofmax 的角色

季节性数据,傅立叶变换是最有效的采样

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/666971.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

心中的TOP4编程语言❤

编程语言心动值排名: java:❤❤❤❤❤ python:❤❤❤❤ C:❤❤❤ C:❤❤❤❤ 一:关于编程语言优劣的评选标准 个人认为一门语言的优劣势标准评判主要是这门语言解决了哪一类问题,为人类创造了多…

Linux0.11内核源码解析-pipe.c

目录 什么是PIPE? PIPE注意事项 有名和匿名管道 内核管道通信 管道读函数 管道写函数 管道创建 什么是PIPE? 进程间通信(IPC,Inter-Process Communication)是指在不同进程间进行数据通信和交换的过程。管道&am…

生成式AI数据中心网络来了,NVIDIA抢占加速计算高端市场

在大模型和生成式AI的大风口下,NVIDIA大力倡导并率先进军传统数据中心的高端市场——加速计算数据中心。自进入AI和大数据时代,业界就开始出现“加速计算”的概念。简单理解,加速计算即使用GPU、FPGA以及各种DPU等加速芯片以及相关的软件技术…

【Java】POJO类的属性不要命名为isXXX的问题描述,复现,解决方法

问题描述 POJO的属性是布尔类型的时候,采用is_xxx的命名方式,出现参数无法找到的情况 问题复现 Boolean 的属性命名为isA,但是它的getter和setter自动取消了is public class Person { Boolean isA; public Boolean getA() { return is…

locust学习教程(4) - 命令行参数

前言 一句话总结:命令行参数、环境变量、配置文件 1、所有命令行参数 1.1、常用场景参数解读 1.1.1、无web界面,定时运行,数据存储在csv中: locust -f per_01_test.py --headless -u 10 -r 1 -t 1m -s 120 --csvexample --head…

locust学习教程(1)- 概念相关

前言 一句话总结:本文是基于2.4.1的版本去学习locust,如果你想完全搞懂它,那么就从最新的产品文档从头到尾去研读一遍吧。 1、locust是什么? 1.1、相关资料 官网:www.locust.io/产品文档:docs.locust.io…

光伏电站并网雷电防护措施探讨 安科瑞 许敏

摘要: 本文指出了雷击对并网系统光伏电站的主要危害形式及所对应的雷电防护措施。依据相关的防雷及电气接地规范,针对并网系统光伏电站提出了防雷设计方案并做了详细的阐述。在光伏电站的防雷设计中,应考虑雷电会通过何种形式对哪些设施造成损害&#xf…

玩转系统|完美替代ChatGPT!Claude注册教程及出现问题解决方案

目录 1、什么是ChatGPT? 2、什么是Claude? 3、为什么推荐Claude? 3.1、Claude特性 4、注册 slack 5、Claude添加到Slack 6、出现APP Unavailable问题 7、如何解决该问题 8、使用感受 8、1代码测试 8、2文学测试 8、3英语测试 1、什么是ChatGPT&a…

防溺水智能预警监控系统解决方案

一、方案背景 随着夏季暑期的到来,孩童、学生溺水的警钟又不断敲响。预防夏季溺水,不仅要求学校方面要加强安全宣传教育,同时相关部门也需要加强对河流、湖泊、水库、池塘等水域的监控和人员靠近预警。 目前水库、河湖、堤坝、河湖岸线、深水…

图观 智慧交通合集 | 9大行业细分应用案例 一次性看个够!

随着城市化进程的加速和交通需求的不断增长,城市交通系统的安全、高效、智能化的要求越来越高,智慧交通正成为现代城市发展的必然趋势。数字孪生技术的出现,为智慧交通领域的应用提供了更为广阔的空间。 数字冰雹深耕数字孪生行业十余载&…

【Java高级语法】(九)IO流:肝了三天三夜,我打赌没有比我这边更细的探索Java I\O流的文章了~

Java高级语法详解之IO流 :one: 概念1.1 输入流和输出流1.2 字节流和字符流 :two: 优势和缺点:three: 使用3.1 File 类3.2 RandomAccessFile 类3.3 字节流3.3.1 文件字节流3.3.2 缓冲字节流3.3.3 基本数据类型字节流3.3.4 打印流3.3.5 对象序列化流3.3.6 字节数组流 3.4 字符流3…

论文笔记 - 对话系统中的 OOD (Out of Domain出域)问题

徐阿衡 人工智能与机器学习工程师 最近看了下 2021年关于 OOD 的几篇 paper,记录一下~ 对话系统中的 domain 都是预先定义好的,而在实际应用场景中,会有很多现有系统回答不了的问题(out of the design scope)&#…

locust学习教程(3)- 编写locust脚本

前言 一句话总结:并发的用户执行了第一类测试任务、第二类测试任务,设置所有类的测试前置、测试后置,设置每一类测试任务的测试前置,测试后置。 1、概念 1.1、一个完整的脚本示例 from locust import task, HttpUser, constant…

ASEMI代理光宝光耦LTV-50L的工作原理及应用领域

编辑-Z 本文将对光耦LTV-50L进行详细的介绍,包括其工作原理、性能特点、应用领域以及注意事项。通过阅读本文,您将对光耦LTV-50L有更深入的了解,以便在实际应用中更好地发挥其作用。 1、光耦LTV-50L的工作原理 光耦LTV-50L是一种光电器件&a…

uni-table 表格的封装

文章目录 项目场景:实现效果创建表格组件文件页面中使用实现方法 项目场景: 在实际的应用场景中,表格是一个非常常见的需求,如果每一个的表格都自己去手写的话非常的浪费时间,并且当中的代码冗余量非常大,…

Python--元组

Python--元组 <font colorblue>一、创建元组<font colorblue>二、访问元组元素<font colorblue>三、元组的增、删、查、改<font colorblue>1、添加元素<font colorblue>2、删除元素<font colorblue>3、查找元素<font colorblue>4、修…

甄品进化 | 燕小千智能助手,用AIGC撬动企业知识宝藏

背景&#xff1a;2022年AIGC&#xff08;AI-Generated Content,人工智能生成内容&#xff09;这个新概念横空出世&#xff0c;不仅被消费者追捧&#xff0c;而且备受投资界的关注&#xff0c;更是被技术和产业界竞相追逐。2022年12月&#xff0c;OpenAI的大型语言生成模型ChatG…

Android 60问60答 (一篇复习整个Android)

Android 60问60答 &#xff08;一篇复习整个Android&#xff09; 有哪些移动端平台&#xff1f; 厂商开发平台&#xff1a; los 黑莓&#xff08;blackBerry&#xff09; 第三方私有平台&#xff1a;第三方开发供移动设备厂商使用 WindowsMobile 免费开源平台&#xff1…

微信小程序克隆到运行

1.git克隆 2.安装依赖 npm i 如果遇到卡在node lib/install.js 一直不进行 重新运行安装&#xff1a;(https://www.python100.com/html/3716RLP8FZM2.html) npm install --ignore-scripts理解npm install --ignore-scripts 3.安装完运行 npm run serve如果报错&#xff1a; …

基于改进多目标粒子群算法的配电网储能选址定容——附Matlab代码

目录 摘要&#xff1a; 主要内容&#xff1a; 程序思路&#xff1a; 储能选址定容优化模型&#xff1a; &#xff08;1&#xff09;节点电压波动&#xff1a; &#xff08;2&#xff09;负荷波动&#xff1a; &#xff08;3&#xff09;储能系统容量&#xff1a; 改进的…