Diffusion Models for Time Series Applications: A Survey

news2024/11/19 3:31:37

Diffusion Models for Time Series Applications: A Survey (Paper reading)

Lequan Lin, The University of Sydney Business School, arXiv2023,Cited:5, Code, Paper

1. 引言

扩散模型是一类基于深度学习的生成模型,在前沿的机器学习研究中变得越来越突出。在生成类似于观测数据的样本方面表现出色,扩散模型如今在图像、视频和文本合成领域广泛应用。近年来,扩散的概念已经扩展到时间序列应用,并且许多强大的模型已经被开发出来。考虑到这些模型缺乏系统性的总结和讨论,我们提供这篇综述作为新研究人员在这一领域的基础资源,同时也为激发未来研究提供灵感。为了更好地理解,我们包括了有关扩散模型基础知识的介绍。除此之外,我们主要关注基于扩散方法的时间序列预测插值生成,在三个单独的部分分别进行介绍。我们还会比较同一应用领域的不同方法,并在适用的情况下突出它们之间的联系。最后,我们总结了扩散方法的共同局限,并突出潜在的未来研究方向。

2. 介绍

在这里插入图片描述

扩散模型是一类基于深度学习的生成模型,在近年来的机器学习社区中崭露头角。在诸如图像合成、视频生成、自然语言处理以及时间序列预测等各种实际应用中,扩散模型表现出卓越的性能,展示了其在许多现有生成技术上的优势。

给定目标分布 q ( x ) q(x) q(x)中的一些观测数据 x x x,生成模型的目标是学习一个生成过程,从 q ( x ) q(x) q(x)中产生新样本。为了学习这样的生成过程,大多数扩散模型开始通过注入高斯噪声逐步扰动观测数据,然后应用一个可学习的转换核心进行逆过程以恢复数据。典型的扩散模型假设在一定数量的噪声注入步骤后,观测数据将变成标准高斯噪声。因此,如果我们能够找到从标准高斯噪声恢复原始数据的概率过程,那么我们就可以使用相同的概率过程以任何随机标准高斯噪声作为起始点生成类似的样本。

最近三年见证了扩散模型向与时间序列相关的应用的扩展,包括时间序列预测、时间序列插补以及时间序列生成。在给定观测到的历史时间序列的情况下,我们通常尝试预测未来的时间序列,这个过程称为时间序列预测由于观测到的时间序列有时由于数据收集失败和人为错误等原因而不完整,时间序列插补用于填补缺失值与时间序列预测和插补不同,时间序列生成旨在产生具有与观察期相似特征的更多时间序列样本。

基本上,基于扩散的时间序列应用方法从三种基本公式中发展而来,包括去噪扩散概率模型(DDPMs)、基于分数的生成模型(SGMs)和随机微分方程(SDEs)。不同方法中扩散组件学习的目标分布通常涉及对先前时间步的条件。然而,扩散和去噪过程的设计因不同任务的不同目标而异。因此,相关文献的全面而自包含的总结将为刚进入这一新领域的新研究人员以及寻求未来方向的经验丰富的研究人员提供灵感。因此,本综述旨在总结现有的文献,比较不同方法,并确定潜在的局限性。

3. Time Series Forecasting

多变量时间序列预测是机器学习研究中的一个关键领域,在各种行业中具有广泛的应用。与仅跟踪一种特征随时间变化的单变量时间序列不同,多变量时间序列涉及多个特征的历史观测,这些特征相互作用并随时间演变。因此,它们能够更全面地理解复杂系统,并实现对未来趋势和行为的更可靠预测。近年来,生成模型已被用于多变量时间序列预测任务。例如,WaveNet是一个具有扩张因果卷积的生成模型,用于对序列进行长期依赖性编码。另一个例子是Rasul等,他们使用自回归深度学习模型对多变量时间序列进行建模,其中数据分布通过条件归一化流来表示。**然而,这些模型的共同缺点是它们的目标分布的功能结构受到严格的限制。**另一方面,基于扩散的方法可以提供一个不那么限制性的解决方案。在本节中,我们将讨论四种基于扩散的方法。我们还包括两个专门设计用于时空图(即具有多变量时间序列的空间相关实体)的模型,以突显将扩散理论扩展到更复杂的问题设置。由于相关文献大多集中在多变量时间序列预测上,“预测”在本综述的其余部分指的是多变量时间序列预测。

3.1 问题建模

考虑一个多变量时间序列 X 0 = { x 1 0 , x 2 0 , . . . , x T 0 ∣ x i 0 ∈ R D } X^0 = \{x_1^0,x_2^0,...,x_T^0 | x_i^0 \in \mathbb{R}^D\} X0={x10,x20,...,xT0xi0RD},其中上标 0 表示数据在扩散过程中没有受到干扰。预测任务是在给定历史信息 X c 0 = { x 1 0 , x 2 0 , . . . , x t 0 − 1 0 } X_c^0 = \{x_1^0,x_2^0,...,x_{t_0-1}^0 \} Xc0={x10,x20,...,xt010}的情况下,预测 X p 0 = { x t 0 0 , x t 0 + 1 0 , . . . , x T 0 } X_p^0 = \{x_{t_0}^0,x_{t_0+1}^0,...,x_{T}^0 \} Xp0={xt00,xt0+10,...,xT0}。这里 X c 0 X_c^0 Xc0被称为上下文窗口,而 X p 0 X_p^0 Xp0被称为预测区间。在基于扩散的模型中,问题被定义为学习预测区间内数据的联合概率分布:
q ( x t 0 : T 0 ∣ x 1 : t 0 − 1 0 ) = ∏ t = t 0 T q ( x t 0 ∣ x 1 : t 0 − 1 0 ) q(x_{t_0:T}^0|x_{1:t_0-1}^0) = \prod_{t=t_0}^Tq(x_t^0|x_{1:t_0-1}^0) q(xt0:T0x1:t010)=t=t0Tq(xt0x1:t010)
一些文献还考虑了协变量在预测中的作用,比如 (Rasul et al., 2021a) 和 (Yan et al., 2021)。协变量是可能会影响变量随时间变化行为的额外信息,例如季节性波动和天气变化。将协变量纳入预测通常有助于加强识别驱动数据时间趋势和模式的因素。具有协变量的预测问题被表述为:
q ( x t 0 : T 0 ∣ x 1 : t 0 − 1 0 , c 1 : T ) = ∏ t = t 0 T q ( x t 0 ∣ x 1 : t 0 − 1 0 , c 1 : T ) q(x_{t_0:T}^0|x_{1:t_0-1}^0,c_{1:T}) = \prod_{t=t_0}^Tq(x_t^0|x_{1:t_0-1}^0,c_{1:T}) q(xt0:T0x1:t010,c1:T)=t=t0Tq(xt0x1:t010,c1:T)
其中 c 1 : T c_{1:T} c1:T表示所有时间点的协变量,并且假设在整个时期内这些协变量是已知的。为了进行训练,**可以从完整的训练数据中随机抽取上下文窗口,然后再抽取预测窗口。**这个过程可以看作是在整个时间线上应用一个大小为 T T T 的滑动窗口。然后,可以使用这些样本来优化目标函数。通过与扩散模型相对应的生成过程,通常可以实现对未来时间序列的预测。

3.2 TimeGrad

首个引人注目的基于扩散的预测工作是由 Rasul 等人在 2021 年提出的 TimeGrad。基于 DDPM 模型开发的 TimeGrad 首先在每个预测时间点向数据中注入噪声,然后通过在历史时间序列条件下逐渐去噪,使用向后转移核进行。为了编码历史信息,TimeGrad 通过以下方式近似上面公式中的条件分布:
∏ t = t 0 T p θ ( x t 0 ∣ h t − 1 ) \prod_{t=t_0}^Tp_{\theta}(x_t^0|h_{t-1}) t=t0Tpθ(xt0ht1)
其中:
h t = R N N θ ( x t 0 , c t , h t − 1 ) h_t = RNN_{\theta}(x_t^0,c_t,h_{t-1}) ht=RNNθ(xt0,ct,ht1)
其中 h t h_t ht 是使用 RNN 模块(如 LSTM或 GRU)计算得出的隐藏状态,该模块可以保留历史的时间信息。而 θ θ θ 则包含了用于整体条件分布及其 RNN 组件的可学习参数。在训练过程中,参数 θ θ θ通过最小化带有随机采样的负对数似然目标函数来进行估计。然后,未来的时间序列会以逐步的方式生成。假设完整时间序列的最后一个时间点是 T ~ \tilde T T~。第一步是基于最后一个可用的上下文窗口推导出隐藏状态 h T ~ h_{\tilde T} hT~。接下来,下一个时间点 T ~ + 1 \tilde T+1 T~+1的观测值会以类似 DDPM 的方式进行预测。

后续更新。。。。

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

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

相关文章

Linux线程 --- 生产者消费者模型(C语言)

在学习完线程相关的概念之后,本节来认识一下Linux多线程相关的一个重要模型----“ 生产者消费者模型” 本文参考: Linux多线程生产者与消费者_红娃子的博客-CSDN博客 Linux多线程——生产者消费者模型_linux多线程生产者与消费者_两片空白的博客-CSDN博客…

测试平台metersphere

metersphere可以做接口测试、UI测试、性能测试。 metersphere接口测试底层是jmeter,可以做API管理,快捷调试,接口用例管理,接口自动化场景执行一键选取用例范围,生成测试报告。 会用jmeter,metersphere会…

软年架构复用-架构师之路(十一)

软件架构复用 软件产品线是 一组产业密集型系统,规定用公用的 核心资产集成 开发而来。 机会复用 和 系统复用。 机会复用:临时发现有可服用资产立马复用。 系统复用:开发之前进行规划好哪些需要复用。 复用的三个阶段: 获取到…

高阶数据结构并查集

目录: 并查集的概念代码实现 并查集的概念 将n个不同的元素划分成一些不相交的集合。开始时,每个元素自成一个单元元素集合,然后按一定的规律将归于同一组元素的集合合并。在此过程中反复遇到查询某一个元素属于那个集合的运算,这…

储能运行约束的Matlab建模方法

最近一段时间有很多人问我最优潮流计算中储能系统的建模方法。部分朋友的问题我回复了,有些没有回消息的,我就不再一一回复了,在这里我写一篇博客统一介绍一下。 1.储能系统介绍 首先,让【GPT】简单介绍一下储能系统:…

【多天线传输技术】BPSK调制信号在AWGN信道下的理论误码率与仿真误码率

%% [0、预处理] clc; clear; close all;%% [1、配置参数] N1000000; %数据点数(个) SNR_dB0:10; %信噪比(dB形式) SNR10.^(SNR_dB/10); %信噪比(一般形式,Eb/N0)…

【业务功能篇78】微服务-前端后端校验- 统一异常处理-JSR-303-validation注解

5. 前端校验 我们在前端提交的表单数据,我们也是需要对提交的数据做相关的校验的 Form 组件提供了表单验证的功能,只需要通过 rules 属性传入约定的验证规则,并将 Form-Item 的 prop 属性设置为需校验的字段名即可 校验的页面效果 前端数据…

Android相机-HAL子系统

引言 应用框架要通过拍照预览摄像获得照片或者视频,就需要向相机子系统发出请求, 一个请求对应一组结果 一次可发起多个请求,并且提交请求是非阻塞的,始终按照接收的顺序以队列的形式先进先出地进行顺序处理 一个请求包含了拍摄和拍照配置的所有信息&…

企业数字化转型中,VR数字展厅能有哪些体验?

在数字化转型的浪潮下,企业纷纷开始注重数字展厅的开展,VR虚拟展厅结合VR全景技术,可以创造出许多有趣的玩法和体验,无论是虚拟参观、互动体验还是VR云会议对接,都为企业客户带来了全新的感知方式。 同传统展厅相比&am…

【LeetCode-中等题】560. 和为 K 的子数组

题目 题解一&#xff1a;逆序枚举数组 //方法一:枚举数组&#xff08;顺序&#xff09;int count 0;// 记录最终符合条件的数组个数int n nums.length;for(int end 0; end<n ; end){int sum 0;//记录每一次经过的元素总和for(int start end; start>0;start--){sum n…

漏洞挖掘和漏洞利用技术:讨论漏洞发现、利用和修复,深入研究不同类型漏洞的技术细节

章节一&#xff1a;引言 在当今数字化时代&#xff0c;计算机技术的迅猛发展为我们的生活带来了无数便利&#xff0c;然而也伴随着各种安全威胁。恶意黑客利用漏洞进行攻击已成为一种常见现象。本文将深入探讨漏洞挖掘和漏洞利用技术&#xff0c;以及如何修复这些漏洞&#xf…

微信小程序路由以及跳转页面传递参数

路由 在app.json的pages里面写 "pages/页面/页面" 直接保存pages直接生成非常方便 跳转页面 wx.navigateTo() 保留当前页面&#xff0c;跳转到应用内的某个非tabBar页面。 <text bindtap"daka">点击</text> daka:function () {wx.navigateTo…

第3篇:vscode搭建esp32 arduino开发环境

第1篇:Arduino与ESP32开发板的安装方法 第2篇:ESP32 helloword第一个程序示范点亮板载LED 1.下载vscode并安装 https://code.visualstudio.com/ 运行VSCodeUserSetup-x64-1.80.1.exe 2.点击扩展&#xff0c;搜索arduino,并点击安装 3.点击扩展设置&#xff0c;配置arduino…

java+springboot+mysql村务档案管理系统

项目介绍&#xff1a; 使用javaspringbootmysql开发的村务档案管理系统&#xff0c;系统包含超级管理员、工作人员角色&#xff0c;功能如下&#xff1a; 超级管理员&#xff1a;系统用户管理&#xff08;工作人员管理&#xff09;&#xff1b;公开资料&#xff1b;会议记录&…

PDF校对:追求文档的精准与完美

随着数字化时代的到来&#xff0c;PDF已经成为了多数机构和个人首选的文件格式&#xff0c;原因在于它的稳定性、跨平台特性以及统一的显示效果。但是&#xff0c;对于任何需要公开或正式发布的文档&#xff0c;确保其内容的准确性是至关重要的&#xff0c;这就是PDF校对显得尤…

IDEA创建Spring,Maven项目没有resources文件夹

有时新建Spring或Maven项目时&#xff0c;会出现目录中main下无resources文件夹的情况&#xff0c;来一起解决一下&#xff1a; FIles|Project Structure 在Modules模块找到对应路径&#xff0c;在main下创建resources&#xff0c;右键main&#xff0c;选择新文件夹 输入文件…

瞎扯之synchronized

我是胡说八道君&#xff0c;鉴别一个人基础打得牢不牢&#xff0c;有没有这个举一反三、将学过的知识串联起来的能力&#xff0c;教你一个简单的方法&#xff1a;关键词联想法 有兴趣的童鞋也可以跟着我的思路去画一张思维导图哦!加入你自己联想道德的部分更重要 eg: 给你一个…

金桥跨越相伴岁月 桂冠加冕爱意时光 GP芝柏表演绎浪漫七夕

两个多世纪以前&#xff0c;康士坦特芝勒德 (Constant Girard) 与玛莉亚柏雷戈 (Marie Perregaux) 喜结连理&#xff0c;两颗心灵在爱意中交织&#xff0c;二人将姓氏结合&#xff0c;创立“Girard-Perregaux”芝柏表&#xff0c;成为数百年来瑞士高级制表中仅有的以夫妻双人姓…

VoxWeekly|The Sandbox 生态周报|20230821

欢迎来到由 The Sandbox 发布的《VoxWeekly》。我们会在每周发布&#xff0c;对上一周 The Sandbox 生态系统所发生的事情进行总结。 如果你喜欢我们内容&#xff0c;欢迎与朋友和家人分享。请订阅我们的 Medium 、关注我们的 Twitter&#xff0c;并加入 Discord 社区&#xf…

idea 对JavaScript进行debug调试

文章目录 1.新增 JavaScript Debug 配置2.配置访问地址3.访问url. 打断点测试 前言 : 工作中接手别人的前端代码没有注释&#xff0c;看浏览器的network或者console切来切去&#xff0c;很麻烦&#xff0c;可以试试idea自带的javscript debug功能。 1.新增 JavaScript Debug 配…