当前位置: 首页 > article >正文

时序论文34|AdaWaveNet:用于时间序列分析的自适应小波网络

图片

论文标题:AdaWaveNet: Adaptive Wavelet Network for Time Series Analysis

论文链接:https://arxiv.org/abs/2405.11124

论文代码:https://github.com/comp-well-org/AdaWaveNet/

前言

这篇文章面向非平稳时间序列进行分析与建模,首先要理解平稳序列与非平稳序列的概念:平稳序列一般指数据的统计特性(如均值、方差、自协方差等)不随时间变化而变化,非平稳序列则相反。很明显,平稳序列的建模与分析是相对容易的,而非平稳序列我认为极端情况下是很难预测或者不可预测的。

我们看到的多数论文,大多是对平稳序列进行建模分析,过去我印象比较深刻的非平稳论文只有两篇:论文29、论文04。但真实场景中,肯定非平稳序列更多,那么换句话说,已有多数模型如果直接应用到真实数据,实际很难捕捉序列中的时间动态变化,从而导致时间序列分析中出现偏差和误差。

那么已有的工作是怎么改进的呢?大多采用实例归一化和傅里叶变换这类思路,但作者认为这些方法仍然缺乏:处理多尺度特征以及捕捉不同信号中不断变化的时间动态的适应性的能力。本文就是在这样的背景下提出了自适应小波网络(AdaWaveNet)这一改进方法,采用自适应小波变换对非平稳时间序列数据进行多尺度分析,下面我们来看具体建模过程。

小波变换

理解小波变换首先要理解傅立叶变换,我之前曾写过傅立叶变换在时序中应用的文章,大家可以参考。这篇文章我们只讲重点,傅立叶变换有短板,短板在于从时域到频域的映射结果,彻底丢弃了时间维度。看下图,三条时间序由三个不同频率的三角函数拼接而成,且很明显它们的先后顺序存在差异。

图片

但是如果我们做傅立叶变换,会得到如下结果。我们发现明明是三条不同的序列,却得到了同样的频率分析图。这就是傅立叶变换的不足之处,失去了时间维度信息。那么有没有一种可能,能够同时得到时间和频率两个维度的特征分析结果呢,是可以的,这就是小波变换。

图片

首先小波变换是一种时频分析方法,它通过对原始信号与不同尺度位置的小波函数进行卷积运算,将信号分解成不同频率和时间分辨率的成分,同时在时间和频率两个域上对信号进行局部化分析,它能够捕捉频率和时间信息。所以小波变换的结果实际上反映了两个维度:时间和频率,小波变换更适合处理非平稳信号,通过不同尺度的小波函数来捕捉信号在不同时间和频率上的变化,也能够有效地提取信号中的突变、瞬态和局部特征。

图片

图片

本文模型

图片

本文提出的自适应小波网络(AdaWaveNet)如上图所示,主要由三个关键部分组成:首先是时间序列分解模块,它的作用是将输入的时间序列数据进行初步处理,把数据拆解为季节性部分和趋势部分。

接着是基于Lifting Scheme堆叠而成的自适应小波模块。这部分会对季节性部分进行转换操作,得到不同层级下的低秩近似以及小波系数相关的信息。然后,构造通道注意力层,并基于以上中间数据进行建模,从而预测出目标低秩近似。之后,再利用逆自适应小波模块,结合之前得到的系数和近似值,重构出预测的季节性部分。对于趋势部分,作者还考虑到了不同变量之间的对齐问题,设计了分组线性模块。这个模块会针对不同的通道组采取不同的线性处理方式,以此来提升对趋势部分的预测精准度。最终,网络的输出就是预测的季节性部分与预测的趋势部分之和。

实验分析

图片

图片

图片

结论

如果你对小波变换很感兴趣,推荐先阅读FEDformer频域增强分解 Transformer,不过本文与FEDformer不同, AdaWaveNet 利用lifting scheme来实现自适应且可学习的小波变换。AdaWaveNet 的优势总结如下:其一,它能够运用多尺度处理手段,很好地解决时间序列数据的非平稳问题;其二,它采用数据驱动的方式,通过Lifting Scheme学习小波系数,最后分组线性模块也对跨通道或者不同信号变量之间的差异进行了处理。


 大家可以关注我【科学最top】,第一时间follow时序高水平论文解读!!!


http://www.kler.cn/a/456319.html

相关文章:

  • 【代码分析】Unet-Pytorch
  • mybatis-plus 用法总结
  • BLE core 内容整理解释
  • Linux arm 编译安装glibc-2.29
  • Android图形绘制之Shapes包详解
  • ipad如何直连主机(Moonlight Sunshine)
  • 【代数学6】基于数域筛法对大整数进行分解
  • 【小程序】自定义组件的data、methods、properties
  • Kafka高可用机制总结
  • Linux-frp_0.61.1内网穿透的配置和使用
  • 数据结构与算法(JAVA语言版解密)
  • CDN(Content Delivery Network,内容分发网络)
  • 浏览器语音视频功能
  • 【每日学点鸿蒙知识】webview性能优化、taskpool、热更新、Navigation问题、调试时每次都卸载重装问题
  • Flume和Kafka的区别?
  • PlasmidFinder:质粒复制子的鉴定和分型
  • 进军AI大模型-环境配置
  • Redis 数据类型全解析:基础与进阶应用场景
  • 【PHP】部署和发布PHP网站到IIS服务器
  • 如何安全删除 GitHub 提交记录及其操作步骤
  • 2848、与车相交的点
  • Kafka 数据传输的事务类型
  • SLES网络
  • 【机器学习(九)】分类和回归任务-多层感知机(Multilayer Perceptron,MLP)算法-Sentosa_DSML社区版 (1)111
  • 机器学习随机森林回归时间序列预模型中时间滑动窗口作用以及参数设置
  • 基于openEuler22.09部署OpenStack Yoga云平台(一)