论文推荐:ScoreGrad,基于能量模型的时间序列预测
能量模型(Energy-based model)是一种以自监督方式执行的生成式模型,近年来受到了很多关注。本文将介绍ScoreGrad:基于连续能量生成模型的多变量概率时间序列预测。如果你对时间序列预测感兴趣,推荐继续阅读本文。
为什么时间序列预测很重要?
这是一个老生常谈的问题,因为时间序列预测在各个行业都有广泛的用例,从金融到能源,从医疗保健到农业等。
与其他人工智能领域(如计算机视觉)相比,时间序列具有挑战性的是高度的不确定性及其长/短依赖性等。也就是说,即使使用最先进的数学算法,就目前来说,你也不可能预测下个月比特币的价值,因为除了时间序列本身,还有很多外在因素。但是在众多应用中,深度学习模型被广泛用于预测未来,例如预测能源消耗,就能源来说,影响的因素较小,我们倒是可以对其进行研究。
为什么生成模型是人们关注的焦点?
生成模型是一种新的类型的深度学习模型,随着新一波有创意和有前途的初创企业在经济中获得越来越多的关注。生成模型中最受欢迎和流行的例子是著名的ChatGPT,它在最近几个月里征服了数百万人。
生成模型的机制可能听起来很复杂,本文也无法详细说明,但是一般来说生成模型能够生成新的数据(这是废话😒)。但这些数据可以是任何类型的数据,从图像到文本,当然也包括数字。
生成模型是如何工作的?
一句话总结生成数据的机制:他们通过学习训练数据中的统计模式来生成新的数据样本,然后使用这些知识随机创建新的、相似的样本。
生成式模型试图生成尽可能接近真实数据分布的分布。
下面开始进入我们的正题
ScoreGrad是如何运作的?
ScoreGrad是一个用于预测时间序列数据的框架,使用复杂的数学和连续的基于能量的生成模型。它由两部分组成:一个特征提取模块,用于从数据中挑选出重要的部分;一个分数匹配模块,使用一种叫做随机微分方程的东西,通过回溯时间来进行预测。它的工作方式是通过在迭代循环中求解逆时SDE。
1、训练
通过输入多变量时间序列数据来训练模型,以最小化损失函数(如下所示):
训练过程是下面的算法1的伪代码:
2、预测
把预测看作是反向连续时间SDE抽样的迭代。
从预定分布中获取样本。将特征状态、样本和相应时间提供给试图解决反向SDE的采样器,这样就可以得到预测。
然后将预测(采样器的输出)、协变量和特征状态提供给一个名为时间序列的特征抽取模块,将其用于下一个预测。
ScoreGrad的架构
下图看着有很多的模块,并且很乱,别担心,下面会慢慢解释。😉
(a)时间步t的模型架构
(b)分数匹配模块架构
(1)符号和问题表述
应该注意的是,一直都有协变量的值。迭代预测的方式可以在下面公式2中表述:
(2)模型架构
该框架在每个时间步上都由两个模块组成;首先是时间序列的特征提取(TS),然后是基于条件SDE的分数匹配模块。
先介绍第一个模块“TS特征提取”:想要得到之前值的一个特殊特征;每个时间步中我们称它为Ft,因为要对所有时间步都这样做,所以需要更新它就需要定义了一个函数(R):
可以很容易地将Eq(2)转换为Eq(4),这是一个条件预测公式:
这里的Ft可以等价于rnn中的隐藏状态,TCN或基于注意力的模型中学习特征的向量表示。缺省情况下,ScoreGrad使用rnn。
下面就是基于条件SDE的分数匹配模块:为了调节SDE,使用Ft,如架构图中的分数匹配模块所示,将其输入到全连接的上采样器中,然后向上采样,这种操作发生在每个时间步,所以我们可以简单地使用时间t的对应状态。如果ts是积分时间,那么就有:
上面的公式是修正的条件逆时SDE。如果我们知道这个分数函数在所有时间步长的值,就可以用数值SDE求解器进行反转。那么这个分数函数是什么呢?是一个神经网络。
(3)条件分数网络
这部分受到两个论文的启发:1.WaveNet 2.DiffWave;有兴趣的可以去看看,这里就不多解释了
网络有三个输入:
- 特征(Ft )
- 输入状态(xt)
- 对应时间(ts)
用Conv1D (filter size= 1,3)改变输入状态,并将嵌入模块(对应时间)从位置嵌入改变为随机傅里叶特征。这里Ft (Feature)是评分网络的调节器。将隐藏表示+时间嵌入传递给卷积算子;然后添加输出并进行激活操作。
通过使用输出的一部分作为块的输出,其余部分用跳过连接输入求和到下一个块。最后将所有输出加在一起,并对最终输出进行简单的卷积变换。
语言描述有点复杂,可以根据ScoreGrad的架构图的分数匹配模块架构对应查看应该会更好的理解。
结果
这部分是研究中最重要的部分;因为这是表明模型有效的一部分。这里提到了与其他以前的模型进行比较的结果。
该模型在包括Exchange、太阳能、电力、交通、出租车和维基百科在内的各个行业的各种基准数据集上进行评估。
这里的区别点是他们使用了一个名为“连续排名概率分数(CRPS)”的分数,如下所示:
使用这个分数来计算累积分布函数(CDF)F与真实值x的相容程度。然后通过计算每个时间步的CROS,可以计算CRPS_sum:
然后就得到了下面的结果:
基于VP SDE和交通数据集实际观察的ScoreGrad预测区间。
论文地址:https://avoid.overfit.cn/post/7dc6c0db14cc4e919bc4dbb8d342b0e0
作者:Reza Yazdanfar
相关文章:

论文推荐:ScoreGrad,基于能量模型的时间序列预测
能量模型(Energy-based model)是一种以自监督方式执行的生成式模型,近年来受到了很多关注。本文将介绍ScoreGrad:基于连续能量生成模型的多变量概率时间序列预测。如果你对时间序列预测感兴趣,推荐继续阅读本文。 为什…...

RabbitMq(具体怎么用,看这一篇即可)
RabbitMq汇总1.RabbitMq的传统实现方式2.SpringAMQP简化RabbitMq开发2.1 基本消息队列(BasicQueue)2.2 工作消息队列(WorkQueue)2.3 发布订阅 -- 广播(Fanout)2.4 发布订阅 -- 路由(Direct&…...

第九届蓝桥杯省赛 C++ A/B组 - 全球变暖
✍个人博客:https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 📚专栏地址:蓝桥杯题解集合 📝原题地址:全球变暖 📣专栏定位:为想参加蓝桥杯的小伙伴整理常考算法题解,祝大家…...

Leetcode.2359 找到离给定两个节点最近的节点
题目链接 Leetcode.2359 找到离给定两个节点最近的节点 Rating : 1715 题目描述 给你一个 n个节点的 有向图 ,节点编号为 0到 n - 1,每个节点 至多 有一条出边。 有向图用大小为 n下标从 0开始的数组 edges表示,表示节点 i有一条…...

DCDC/LDO Auto-Discharge
1、概念 When using a capacitor with large capacity value in VOUT side, the VOUT pin voltage might not immediately fall to the ground level when the EN(CE,CONTROL) pin is switched from the active mode to the standby mode. By adding N-channel transistor to …...

linux 中的log
linux 中的log 由于内核的特殊性,我们不能使用常规的方法查看内核的信息。下面介绍几种方法。 1 printk()打印内核消息。 2 管理内核内存的daemon(守护进程) Linux系统当中最流行的日志记录器是Sysklogd,Sysklogd 日志记录器由…...

基于ubuntu的STM32嵌入式软件开发(四)——应用软件工程的修改、Makefile及编译脚本的编写
本文主要介绍基于标准库函数移植的STM32的应用软件工程的修改,主要涉及到文件内容修改、Makefile文件编写、编译脚本编写等内容,其中编译脚本是基于arm-none-eabi-gcc的交叉编译器撰写的。程序亲测可以正常编译,生成.bin和.hex的可烧录镜像文…...

MQTT协议分析
目录 一、前言 二、MQTT协议概述 概念 基本原理 MQTT协议的结构 MQTT的QoS机制 QoS 0:最多一次传输 QoS 1:至少一次传输 QoS 2:恰好一次传输 三、MQTT的应用场景 四、MQTT的优点和缺点 五、MQTT协议的实现 六、实战体验MQTT …...

基于树莓派4B设计的音视频播放器(从0开始)
一、前言 【1】功能总结 选择树莓派设计一款家庭影院系统,可以播放本地视频、网络视频直播、游戏直播、娱乐直播、本地音乐、网络音乐,当做FM网络收音机。 软件采用Qt设计、播放器引擎采用ffmpeg。 当前的硬件选择的是树莓派4B,烧写官方系统,完成最终的开发。 本篇文章主…...

MSF手机渗透实验(未成功)(CVE-2019-2215 Binder UA)
1. 前言 最近想利用metasploit对手机进行依次渗透实验。 通过查看最近三年的安卓漏洞,我对CVE-2019-2215这个漏洞很感兴趣。 幸运的是,metasploit里就有这个漏洞的攻击payload,于是我就开始试试了。 msf6 > search binderMatching Mod…...

系列十二、MySQL管理
一、系统数据库 Mysql数据库安装完成后,自带了一下四个数据库,具体作用如下:二、常用工具 2.1、mysql 2.1.1、概述 该mysql不是指mysql服务,而是指mysql的客户端工具。 2.1.2、语法 # 语法 : mysql [options] [dat…...
[游戏架构] 有限状态机的实际应用
什么是有限状态机 有限状态机(Finite State Machine,简称FSM)是一种常用的计算机科学中的建模工具,用于描述由离散状态和状态之间的转换组成的系统。它主要由一个有限的状态集合、一个初始状态、一个输入事件集合、状态之间的转换…...

【站外SEO】如何利用外部链接来提高你的网站排名
随着互联网的快速发展,越来越多的企业开始注重SEO优化,以提升自己的网站排名,增加流量和曝光度。 而站外SEO作为SEO的重要组成部分,对于提升网站排名具有不可忽视的作用。 站外SEO主要是通过外部链接来提高网站的排名。而GPB外链…...
OSCP-课外4(修复web访问、Mysql UDF提权)
目录 难度 一、主机发现与端口扫描 二、Web信息收集 站点目录扫描 搜索phpmailer的漏...

深信服面经---云计算方向(附问题知识点解析)
深信服面经---云计算高级开发一、一面问题概览二、实操相关三、复盘对问题答案进行整理(查漏补缺)3.1、go语言简单了解3.2、项目中成就感最大或挑战最大的地方3.3、项目问题---协议头引入之后,包的大小增加了多少3.4、如何建立缓存3.5、cache…...

MySQL面试题-基础篇
目录 前言 数据库基础 1.什么是关系型数据库和非关系型数据库? 2.什么是 SQL? 3.MySQL 有什么优点? 4.MySQL 的基础架构? 存储引擎 1.MySQL 支持哪些存储引擎?默认使用哪个? 2.MySQL 存储引擎架构了解吗&…...

高通平台开发系列讲解(摄像头篇)QCM6490 上摄像头驱动开发
文章目录 一、Camera 硬件简介二、内核驱动移植2.1、确定设备树2.2、增加 camera 节点2.3、配置相关 GPIO沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍 qcm6490 摄像头驱动开发。 一、Camera 硬件简介 摄像头连接器一般会包含 Mipi 信号、mclk、供电、re…...

MOV压敏电阻应用推荐及选型要点说明
ESD器件-MOV压敏电阻是一种非线性的电阻元器件产品,具有瞬态电压抑制功能,能够吸收电路中多余的电流,可保护一些敏感电路及其他电子产品设备的电路不受ESD、雷击瞬态浪涌电流的危害。对于它的一些应用范围,优恩小编在这里举例说明…...

Pytorch学习笔记(8):正则化(L1、L2、Dropout)与归一化(BN、LN、IN、GN)
目录 一、正则化之weight_decay(L2正则) 1.1 正则化及相关概念 1.2 正则化策略(L1、L2) (1)L1正则化 (2)L2正则化 1.3 L2正则项——weight_decay 二、正则化之Dropout 2.1 Dr…...

Azure OpenAI 官方指南 01|GPT-3 的原理揭秘与微调技巧
Azure OpenAI 服务在微软全球 Azure 平台正式发布后,迅速成为众多用户最关心的服务之一。 Azure OpenAI 服务允许用户通过 REST API 访问 OpenAI 的强大语言模型,包括 GPT-3、Codex 和 Embeddings 模型系列。本期,我们将为您揭秘 Azure Open…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
OkHttp 中实现断点续传 demo
在 OkHttp 中实现断点续传主要通过以下步骤完成,核心是利用 HTTP 协议的 Range 请求头指定下载范围: 实现原理 Range 请求头:向服务器请求文件的特定字节范围(如 Range: bytes1024-) 本地文件记录:保存已…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...

如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...

【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...
Python ROS2【机器人中间件框架】 简介
销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表
##鸿蒙核心技术##运动开发##Sensor Service Kit(传感器服务)# 前言 在运动类应用中,运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据,如配速、距离、卡路里消耗等,用户可以更清晰…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
漏洞概览 漏洞名称:Apache Flink REST API 任意文件读取漏洞CVE编号:CVE-2020-17519CVSS评分:7.5影响版本:Apache Flink 1.11.0、1.11.1、1.11.2修复版本:≥ 1.11.3 或 ≥ 1.12.0漏洞类型:路径遍历&#x…...