【论文阅读】基于深度学习的时序预测——FEDformer

系列文章链接
论文一:2020 Informer:长时序数据预测
论文二:2021 Autoformer:长序列数据预测
论文三:2022 FEDformer:长序列数据预测
论文四:2022 Non-Stationary Transformers:非平稳性时序预测
论文五:2022 Pyraformer:基于金字塔图结构的时序预测
论文六:2023 Crossformer:多变量时序预测
论文七:2023 LTSF-Linear:质疑transformer能力的线性预测模型

论文地址:https://arxiv.org/abs/2201.12740
github地址:https://github.com/MAZiqing/FEDformer
参考解读:【ICML 2022】时间序列预测——FEDformer (Frequency Enhanced Decomposed Transformer)
快速傅立叶变换:快速傅立叶变换

本文是阿里达摩院的一篇文章,也是针对长序列预测的,文章背景有以下几点:

  1. 从前人的研究就可以看出,大部分研究都在考虑如何降低模型的计算复杂度,因为transformer的二次计算会导致过高的计算复杂度;
  2. 之前的研究都没有关注到时序数据的全局信息,但其实这是很重要的一点(Autoformer开始考虑时间序列分解的季节性&趋势分布序列);
    在这里插入图片描述

整体架构感觉和Autoformer有点类似,但是细节层面上的创新点主要体现在以下几个方面:

  • 频域时间序列表征(Compact Representation in Frequency Domain):采用傅立叶变换将时序数据转换到频域是比较常见的做法,这样能够更好地提取时序数据中的长期规律性特征;但是如果保留所有的频率分量会有很多噪声信息,因为很多高频分量都是噪声引起的,但是也不能仅保留低频分量,因为部分高频分量能够体现时序数据的分布趋势;对于时间序列 X = [ x 1 , . . . , x d ] X=[x_1,...,x_d] X=[x1,...,xd],采用FFT将序列转换成频域表示 A = [ a 1 , . . . , a m ] ∈ R m ∗ d A=[a_1,...,a_m]\in \mathbb{R}^{m*d} A=[a1,...,am]Rmd,虽然所有的频域表征能够充分表示数据信息,但是会存在很多冗余信息,所以问题提出了一种随机频域信息选择的方法,在每个频域表示的 d d d维数据中随机选择 s s s维作为代表( s < d s<d s<d),文中提到一个理论说明验证了这种随机选择后的表征信息量接近于原始表征,因此可以通过这种方式来简化计算。
    在这里插入图片描述如上图所示,先将时序数据 x x x通过多层感知机进行线性表征转换得到 q = x ∗ w q=x*w q=xw,然后采用傅立叶变换将数据转换成 Q Q Q,再进行随机采样得到 Q ~ \widetilde{Q} Q ,然后采用一个随机初始化的矩阵 R R R转换得到 Y ^ \hat{Y} Y^,在转换回时域前进行padding,最后进行逆变换从频域转换回时域;
    在这里插入图片描述
    在注意力机制运算中,仅计算随机选择后的注意力分布,能够简化计算;
  • 基于小波变换的频域增强模块:采用小波变换对序列进行分解,得到高频张量表示 U d ( L ) Ud(L) Ud(L)、低频张量 U s ( L ) Us(L) Us(L)和原始低频张量 X ( L + 1 ) X(L+1) X(L+1),然后基于三个分解数据进行重构,得到新的处理后的数据,细节不展开;
    在这里插入图片描述
    本文两个创新点的思路都是进行分解,然后进行数据重构。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++】stack容器

1.stack基本概念 英stk 美stk n.&#xff08;整齐的&#xff09;一堆&#xff1b;<英> 垛&#xff0c;堆&#xff1b;大量&#xff0c;许多&#xff1b;&#xff08;尤指工厂的&#xff09;大烟囱&#xff1b;&#xff08;图书馆的&#xff09;藏书架&#xff0c;双面书架…

C#字符串占位符替换

using System;namespace myprog {class test{static void Main(string[] args){string str1 string.Format("{0}今年{1}岁&#xff0c;身高{2}cm&#xff0c;月收入{3}元&#xff1b;", "小李", 23, 177, 5000);Console.WriteLine(str1);Console.ReadKey(…

科大讯飞星火模型申请与chatgpt 3.5模型以及new bing的对比

科大讯飞星火模型 申请科大讯飞星火认知大模型账号科大讯飞星火认知大模型使用1.界面介绍2. 在编程能力上与chatgpt 3.5对比科大讯飞星火模型chatgpt 3.5模型 3. 在图片生成能力上与new bing对比 总结 申请科大讯飞星火认知大模型账号 注册网址&#xff1a; 科大讯飞星火认知大…

【C++11保姆级教程】delete和default关键字

文章目录 前言一、delete关键字1.1 什么是delete关键字&#xff1f;1.2delete关键字的语法和用法1.3delete关键字的作用和优势 二、default关键字2.1 什么是default关键字&#xff1f;2.2default关键字的语法和用法2.3 default关键字的作用和优势 总结 前言 欢迎来到本教程&am…

竞赛项目 深度学习验证码识别 - 机器视觉 python opencv

文章目录 0 前言1 项目简介2 验证码识别步骤2.1 灰度处理&二值化2.2 去除边框2.3 图像降噪2.4 字符切割2.5 识别 3 基于tensorflow的验证码识别3.1 数据集3.2 基于tf的神经网络训练代码 4 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x…

ASP.NET WEB API通过SugarSql连接MySQL数据库

注意&#xff1a;VS2022企业版可以&#xff0c;社区版可能存在问题。实体名称和字段和数据库中的要一致。 1、创建项目&#xff0c;安装SqlSugarCore、Pomelo.EntityFrameworkCore.MySql插件 2、文件结构 2、appsettings.json { “Logging”: { “LogLevel”: { “Default”: …

张俊林:由ChatGPT反思大语言模型(LLM)的技术精要

转自&#xff1a;https://mp.weixin.qq.com/s/eMrv15yOO0oYQ-o-wiuSyw 导读&#xff1a;ChatGPT出现后惊喜或惊醒了很多人。惊喜是因为没想到大型语言模型&#xff08;LLM,Large Language Model&#xff09;效果能好成这样&#xff1b;惊醒是顿悟到我们对LLM的认知及发展理念&a…

Cesium--一些实验过程中的效果记录

1.一种反射效果&#xff1a; 片元着色器代码 fragmentShaderSource:in vec3 v_positionMC;in vec3 v_positionEC;in vec2 v_st;void main(){czm_materialInput materialInput;vec3 normalEC normalize(czm_normal3D * czm_geodeticSurfaceNormal(v_positionMC, vec3(0.0), ve…

Git命令详解

1 常用命令 1&#xff09;初始化本地仓库 git init <directory> 是可选的&#xff0c;如果不指定&#xff0c;将使用当前目录。 2&#xff09;克隆一个远程仓库 git clone <url> 3&#xff09;添加文件到暂存区 git add <file> 要添加当前目录中的所…

vim键盘图

国外&#xff1a;http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html&#xff0c;原创&#xff0c;有SVG图&#xff0c;有分步骤的图。 国内翻译&#xff1a;[https://blog.csdn.net/qq_41052753/article/details/101031847 有几个配色&#xff0c;很高清&…

Allegro172版本如何在联机模式下使用skill文件操作指导

Allegro172版本如何在Symphony模式下使用skill文件操作指导 在用Allegeo172版本进行PCB设计的时候,有时会用到Symphony模式进行多人实时在线协同设计,如下图 这个模式设计起来可以提升设计速度,但是也有一个缺陷,就是不能使用skill文件 如下图,当调用skill的时候就会出现…

SpringMVC拦截器

1.拦截器简介 拦截器&#xff08;Interceptor&#xff09;是一种动态拦截方法调用的机制&#xff0c;在SpringMVC中动态拦截控制器方法的执行 作用: 在指定的方法调用前后执行预先设定的代码 阻止原始方法的执行 总结&#xff1a;拦截器就是用来做增强 看完以后&#xff0…