KDD 2023 | WHEN异构时间序列分析模型:当Wavelet和DTW遇上Attention

news2024/11/26 11:41:03

3d7ea408462493cd74f3e4ac5145cfed.gif

4e6c78c1ce4c0c36176456d9c99751a4.png

论文题目:

WHEN: A Wavelet-DTW Hybrid Attention Network for Heterogeneous Time Series Analysis

论文链接:

https://dl.acm.org/doi/10.1145/3580305.3599549

论文作者:

王静远,杨晨,蒋笑寒,吴俊杰教授

作者单位:

北京航空航天大学计算机学院、经济管理学院

数据智能与智慧管理工业和信息化部重点实验室(北京航空航天大学)

课题组:

北航智慧城市课题组(BIGSCity)https://www.bigscity.com/

详细信息:

J. Wang, C. Yang, X. Jiang, and J. Wu. "WHEN: A Wavelet-DTW Hybrid Attention Network for Heterogeneous Time Series Analysis." InProceedings of the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining (KDD’23), pp. 2361-2373. 2023.


92a7fbcc4d18badc1fa310a2b61980ac.png


概述

在数据挖掘领域,时间序列数据分析是一项重要且具有挑战性的任务。而时间序列的本质问题之一,时间序列的异质性,尚未得到充分建模,这正是论文研究的动机所在。

论文认为时间序列的异质性包含了两个棘手且广泛存在的现象,即序列内非平稳性序列间非同步性。如图 1 所示。

dd4ff73a8d61b9854e4c0d7181c7addd.png

▲ 图1 时间序列异质性

序列内非平稳性源于同一个时间序列的不同部分具有固有的异质性特征,例如均值、方差、频率成分等。子图a给出了一个关于心电图(ECG)时间序列的示例,其中 QRS 波群部分(具有高变化频率和幅度)和 T 波部分(具有低变化频率和幅度)明显具有不同的频率成分。

序列间非同步性则指的是时间序列之间的非同步现象,可能由异构的采样率或相位扰动引起。子图 b 所示的示例中,同一类别中的两个心电图时间序列由于具有不同的采样率和初始相位,很可能被归类为不同的类别。这是时间序列分类问题中的常见现象。

96bfb2e37fcc5235f83b5019de1a9f82.png


方法

1)总体框架

为了应对上述挑战,论文提出了 Wavelet-DTW Hybrid attEntion Networks(WHEN),用于对异质时间序列的分析。WHEN 本质上是一个混合注意力网络,将小波变换和动态时间规整算法通过注意力机制进行整合。WHEN 的框架如图 2 所示,包含两个核心模块。

小波注意力(WaveAtt)模块的关键组件是与局部数据相关的小波函数,其中小波函数的频率由局部信号序列确定,该模块通过动态提取输入序列的异质频率成分来减少序列内非平稳性的问题。

动态时间规整注意力(DTWAtt)模块则通过局部动态时间规整注意力处理信息,模块将动态时间规整算法与注意力机制结合,用于处理序列间非同步性的问题。

这两个模块通过任务相关的神经网络(TD-NN-1 和 TD-NN-2)以端到端的方式连接成一个流水线形式的模型,用于时间序列分类或预测任务。

0136faab365548221807c2c1e10504c2.png

▲ 图2 WHEN 结构示例

2)小波注意力模块

小波注意力(WaveAtt) 模块基于经典的小波频率分析并结合神经网络,能够在每个时间点提取不同频率对应的小波系数。

论文首先简要介绍小波变换。小波变换通过一组小波基来提取序列信号的小波系数,而同一个母函数 下的一组小波基可以表示为

d7f9dd881d81fc7dfcc80dda36193319.png

小波基可以看成是一个和时间维度 t 有关的一维函数, 是一个缩放参数,控制基函数的频带, 是一个平移参数,控制基函数的位置。

当把原信号记为一个和时间维度 t 有关的一维函数 f(t) 时,上述小波基能通过下面的计算过程从信号中提取出系数

39276f1276a893fbba4de596a41d2185.png

通过上述变换,小波基可以提取时间序列的重要频率信息。原则上通过调整参数 和 ,论文可以提取任何位置和频率的小波系数。

小波注意力:传统方法通常手动设置 为一组离散数,从而覆盖所有可能的整数频率带,这显然无法发挥小波基提取任意频率的系数这一功能。同时,时间序列数据的内部非平稳性意味着这些信号数据具有随时间动态变化的频率参数,因此在不同情况下提取不同频率对应的小波系数是一件有必要的事。

具体做法则是将频率对应的系数 从手动设置的参数变为一个由神经网络决定的可变函数,同时该函数输出由对应局部信号决定

ef6d3e0a89505a0eb4227d2f5d510aeb.png

这里 w 是神经网络参数,s 是小波注意力模块对应的信号输入(对应上面小波变换部分的信号 f(t)。

对应小波基则变为:

595f602f7009518f09ea90f724fb7b04.png

最后,将小波系数提取公式转化为注意力机制:

77f42202d3948ca906fa7337af88d8e0.png

b2879c765ae235e1d14ea3ec022d8b9a.png

这样,就能够在每个时间点首先确定应当关注的频率,再根据频率提取对应的系数。同时整个模块也是可导的,因此可以将其放入神经网络中作为一个模块发挥作用。

c429907a4d647e54bc174e451c1a1c76.png

▲ 图3  WaveATT示意图

3)动态时间规整注意力

首先简要介绍一下动态时间规整(DTW),这是一种用于测量两个时间序列相似度的算法。它可以在时间维度上非线性地对齐两个时间序列,因此非常适用于协调具有不同相位位置和采样率的两个异步时间序列。

对于两个序列

da9d558b32f6a5c5198bfe9d0ec2afed.png

072b8aaaf19b371636e742a7662dcee9.png

有一系列的规整方式(某种序列点配对方式),可以统一表示成

ee29b9480faca04b10139109f74fcf2c.png

其中下标满足:

8d2725aa95164645ef07d8038a94c872.png

e3fd90c1aa94ffc5d67f0eacb31a2115.png

而动态时间规整目标则是寻找规整距离最短的规整方式,距离可以写为

cc5369a1c2a0140e45661074e072d043.png

因此寻找的是这样的规整方式

6594209fdcb52226300bba228ae4d6b4.png

动态时间规整注意力中,论文通过注意力的方式使原本的动态时间规整方法具备可导性,同时支持现有深度学习环境下的大矩阵运算。

dfa86e9dbb41977995d6873fbb0803c1.png

▲ 图4  DTWATT示意图

图 4 中,动态时间规整注意力模块的输入记为序列 ,这里论文采用一个滑动窗口覆盖输入序列 ,形成了图中的 ,而图中的 则是一个可学习的参数序列。

因为每个滑动窗口采样后的 和 长度是有限的,所以它们对应的规整方式也是有限的(同时在滑动窗口长度较短时,规整方式总数目也并不大),假设总共有 种不同的规整方式,它们对应的 种规整距离可以写为

7fe4a04a99af99d8dcbcf8382aebafa3.png

这时可以通过注意力机制选取近似的最小距离

06f89e9f9cb8fb78eb08c95019bffe3b.png

59941a192d210ec03bd96f7323c14577.png

具有较短距离 的规整方式具有较大的注意力系数 ,因此,在输出 b 中,具有较短距离的规整方式将获得更多的关注。这样,动态时间规整注意力依然寻找到了最短的规整距离,并将其以神经网络的方式实现出来。

90c6bf35bdc79f531fa49239fd6df07f.png


实验

论文的实验基于分类和预测两个任务进行,分类实验结果如下:

8e2183f4c604fc6f5609084aa8a51563.png

分类实验结果用准确率评价,越大越好。可以看出,WHEN 在所有基线模型中取得了平均排名 2.1 的好成绩。

预测实验结果如下

c9cfcd794a230f2f05221d37b0e71029.png

预测实验结果用均方根误差评价,越小越好。可以看出,WHEN 依然表现突出。

另外,论文还使用了 Critical difference diagram 以及 Pairwise statistical significance 对分类实验的统计显著性进行了检验。在 Critical difference diagram 的检验下,WHEN 对除了 DTWAtt(即只使用 DTWAtt 而不使用 WaveAtt 的版本)以外的对比方法都表现出了显著性。在 Pairwise statistical significance 的检验下,WHEN 对其它对比方法都表现出了显著性。

b3668833df276b8021e6df39d873ae12.png

▲ 图5  Critical difference diagram

3b1a957ee189b948fc95ad8195f1b35e.png

ab51dcbcf7f68ec15978b8ecfa542305.png


结论

论文尝试去通过深度学习框架去解决两种时间序列异质性问题,论文设计了两种注意力机制并提出了 WHEN 模型解决上述问题。

论文通过 30 个标准时间序列分类数据集和 3 个时间序列预测数据集进行了模型的验证,最终证明了 WHEN 的优越性。据论文所知,WHEN 是第一项在深度学习框架内考虑时间序列分析中非平稳性和非同步性这两个异质性问题的研究。

更多阅读

47fc6e1f33aeb878732eae76ef98e505.png

14cf0708f4e0d964e3d4ed5de535a9bc.png

467f58d7190ce1dda3d4121c23781066.png

0523f06ec0c086ea9c32f22dda8f9404.gif

#投 稿 通 道#

 让你的文字被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。

📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算

📬 投稿通道:

• 投稿邮箱:hr@paperweekly.site 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿

56df67dac01f58351bd782ee411d3ebf.png

△长按添加PaperWeekly小编

🔍

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

·

·

22ee34335f9b777c199abc6baeac4c4f.jpeg

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

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

相关文章

JavaScript数组的应用及实战

🎬 岸边的风:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 引言 1. 数组简介 2. 数组方法API 添加和删除元素 修改和访问元素 数组遍历 数组转换和连接 数组排序和搜索…

IMU+摄像头实现无标记运动捕捉

惯性传感和计算机视觉的进步为在临床和自然环境中获得精准数据带来了新可能。然而在临床应用时需要仔细地将传感器与身体对齐,这减慢了数据收集过程。 随着无标记运动捕捉的发展,研究者们提出了一个新的深度学习模型,利用来自视觉、惯性传感…

BIO、NIO、AIO有什么区别

什么是IO Java中I/O是以流为基础进行数据的输入输出的,所有数据被串行化(所谓串行化就是数据要按顺序进行输入输出)写入输出流。简单来说就是java通过io流方式和外部设备进行交互。 在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很…

Spring框架@Autowired和@Resource到底有什么区别

目录 1 来源不同2.依赖查找顺序不同2.1 Autowired 查找顺序2.2 Resource 查找顺序2.3 查找顺序小结 3.支持的参数不同4.依赖注入的支持不同5.编译器提示不同6 总结 1 来源不同 Autowired 和 Resource 来自不同的“父类”,其中 Autowired 是 Spring 定义的注解&#…

从命令行管理文件

1.linux系统中硬盘文件存储原理 硬连接 1.1.原理 linux系统中允许多个文件指向同一个inode,即允许一个文件拥有多个有效的路径名和文件名。 理解:硬连接就是指向原始文件的inode指针 证明一: 创建一个文件t1 查看他的硬链接数 创建一个硬链接 …

一阶微分方程

目录 可分离变量的方程 齐次微分方程 一阶线性微分方程 伯努科方程 全微分方程 可分离变量的方程 可分离变量的方程是一种常见的一阶常微分方程类型,其特点是可以通过将变量分离到方程的两侧,从而可以分别对各自变量进行积分。一般形式的可分离变量…

武汉融资融券(两融)开户利率最低能做到多少?无门槛利率5%!

武汉融资融券(两融)开户利率最低能做到多少?无门槛利率5%! 具体武汉融资融券(两融)开户利率最低能做到多少,需要根据不同的券商政策而定。不同的券商可能具有不同的优惠政策和开户条件,因此开户前应该仔细了解券商的政策和条件。 融资融券是指投资者通…

Minio入门系列【2】纠删码

1 纠删码 Minio使用纠删码erasure code和校验和checksum来保护数据免受硬件故障和无声数据损坏。 即便丢失一半数量(N/2)的硬盘,仍然可以恢复数据 1.1 什么叫纠删码 纠删码是一种用于重建丢失或损坏数据的数学算法。 纠删码(e…

SQL注入类型判断

SQL注入的类型分为字符型和数字型,以sqli-labs靶场1、2关为例: 文章目录 第一关第二关无错误回显的判断 第一关 第一关注入一个1’,错误回显出下面内容,其中1’是注入的内容,0,1后面的单引号和最前面的单引号是一对&am…

湖北中级工程师职称网上申报流程是怎么样?应该如何在网上填写申报信息呢?

现在湖北中级职称全部采取网上申报形式,不管是水测还是后面职称评审都是需要网上申报信息,那么中级职称评审,网上如何申报信息呢?填写信息的时候需要注意哪些方面呢?今天甘建二这边给大家整理一下,希望对大…

电动垂直起降飞行器的发展现状

摘要 近年来,电动垂直起降(eVTOL)飞行器在城市空运中得到快速发展。本文介绍了近5年来世界范围内主要的在研电动垂直起降飞行器项目,从飞行器布局形式、总体设计参数、推进系统类型、飞行控制等级等方面进行了归纳和总结,分析了不同构型下相应电动垂直起…

Redis 五大类型源码及底层实现

面试题: 谈谈Redis数据类型的底层数据结构: SDS动态字符串双向链表玉缩列表ziplist哈希表hashtable跳表kiplist整数集合intset快速列表quicklist紧凑列表listpack Redis源代码的核心部分 官网:GitHub - redis/redis: Redis is an in-memory…

jenkins自动化脚本集成时钉钉消息未发送

在进行jenkins自动化脚本集成时,需要配置钉钉发送消息。钉钉的配置正确,测试钉钉消息发送成功,但是当构建项目时,却没有收到钉钉消息,报错如下: [钉钉插件]发送消息时报错: java.lang.NullPointerExceptio…

项目经理晋升为企业高管,需要杀死自己三次

大家好,我是老原。 “猴子屁股理论”,大家应该都知道吧。 就拿职场来说,它就像是一棵树,从树底下开始爬,一层一层的基层员工-基层干部-中层干部-高层-老板。 你会发现,无论你在哪一层,往上看都…

PyTorch实战-实现神经网络图像分类基础Tensor最全操作详解(二)

前言 PyTorch可以说是三大主流框架中最适合初学者学习的了,相较于其他主流框架,PyTorch的简单易用性使其成为初学者们的首选。这样我想要强调的一点是,框架可以类比为编程语言,仅为我们实现项目效果的工具,也就是我们…

开始使用Filebeat

认识Beats Beats是用于单用途数据托运人的平台。它们以轻量级代理的形式安装,并将来自成百上千台机器的数据发送到Logstash或Elasticsearch。 (画外音:通俗地理解,就是采集数据,并上报到Logstash或Elasticsearch&…

用matlab在hfss中建模

hfss可以导入vbs语言建模 怎么生成建模的vbs文档? 1.在hfss中建模建一遍 导出建模的vbs,然后笔记本打开vbs,需要改的话直接改。 参考 https://blog.csdn.net/m0_56117494/article/details/128007860 一文 这个方法朴实无华 但是需要写vbs语言…

英语单词(6)

1.person 人 2.start 开始 3.menu 菜单 4.login 登录 5.main 主要的 6.document 文档 7.display 显示 8.method 方法,条理 9.version 版本 10parameter 参数

Leecode1160: 拼写单词

直接使用一个哈希表存整体的结果,一个临时的哈希表每次算一遍,但是1是要设置标志位来判断最后是否正确并加上长度,2是千万要记得每次新建一个空间来存哈希表绝对不能不空间就等于,会出事!!

【小吉送书—第三期】Linux私教课:技术内核与企业运维篇

文章目录 🍔查找⭐find命令🎈按文件名🎈按拥有者🎈查找Linux系统下大于200M的文件 ⭐locate命令🎈使用方法 ⭐which命令(查找指令的,而不是文件)🎈使用方法 ⭐grep命令和…