时间序列中的无监督表示学习

news2024/11/17 7:35:10

自监督学习中,有一个常用的方法是对比学习;

2.  时间序列的表示学习

1.1 采用对比学习的方式

Time-series representation learning via temporal and contextual contrasting(IJCAI’21)

本文采用对比学习的方式进行时间序列表示学习。首先对于同一个时间序列,使用strong和weak两种数据增强方法生成原始序列的两个view。

Strong Augmentation指的是将原始序列划分成多个片段后打乱顺序,再加入一些随机扰动;

Weak Augmentation指的是对原始序列进行缩放或平移。

在这里插入图片描述

接下来,将strong和weak两个增强的序列输入到一个卷积时序网络中,得到每个序列在每个时刻的表示。文中使用了Temporal Contrasting和Contextual Contrasting两种对比学习方式。

Temporal Contrasting指的是用一种view的context预测另一种view在未来时刻的表示,目标是让该表示和另一种view对应的真实表示更接近,这里使用了Transformer作为时序预测的主体模型,公式如下,其中c表示strong view的Transformer输出,Wk是一个映射函数,用于将c映射到对未来的预测,z是weak view未来时刻的表示:
在这里插入图片描述

Contextual Contrasting则是序列整体的对比学习,拉近相同序列生成的两个view的距离,让不同序列生成的view距离更远,公式如下,这里和图像对比学习的方式类似:

在这里插入图片描述

1.2 采用无监督表示学习

TS2Vec: Towards Universal Representation of Time Series(AAAI’22)

TS2Vec核心思路也是无监督表示学习,通过数据增强的方式构造正样本对,通过对比学习的优化目标让正样本对之间距离,负样本之间距离远。本文的核心点主要在两个方面,第一个是针对时间序列特点的正样本对构造和对比学习优化目标的设计,第二个是结合时间序列特点提出的层次对比学习。

对于正样本对构造方法,本文提出了适合时间序列的正样本对构造方法:Contextual Consistency。Contextual Consistency的核心思路是,两个不同增强视图的时间序列,在相同时间步的表示距离更接近。文中提出两种构造Contextual Consistency正样本对的方法。第一种是Timestamp Masking,在经过全连接后,随机mask一些时间步的向量表示,再通过CNN提取每个时间步的表示。第二种是Random Cropping,选取有公共部分的两个子序列互为正样本对。这两种方法都是让相同时间步的向量表示更近,如上图所示。

在这里插入图片描述
TS2Vec的另一个核心点是层次对比学习。时间序列和图像、自然语言的一个重要差异在于,通过不同频率的聚合,可以得到不同粒度的时间序列。例如,天粒度的时间序列,按周聚合可以得到周粒度的序列,按照月聚合可以得到月粒度的序列。为了将时间序列这种层次性融入对比学习中,TS2Vec提出了层次对比学习,算法流程如下。

对于两个互为正样本对的时间序列,最开始通过CNN生成每个时间步向量表示,然后循环使用maxpooling在时间维度上进行聚合,文中使用的聚合窗口为2。每次聚合后,都计算对应时间步聚合向量的距离,让相同时间步距离近。聚合的粒度不断变粗,最终聚合成整个时间序列粒度,逐渐实现instance-level的表示学习。

1.3 多元时间序列表示

A transformer-based framework for multivariate time series representation learning(KDD’22)

这篇文章借鉴了预训练语言模型Transformer的思路,希望能够在多元时间序列上通过无监督的方法,借助Transformer模型结构,学习良好的多元时间序列表示。本文重点在于针对多元时间序列设计的无监督预训练任务。如下图右侧,对于输入的多元时间序列,会mask掉一定比例的子序列(不能太短),并且每个变量分别mask,而不是mask掉同一段时间的所有变量。预训练的优化目标为还原整个多元时间序列。通过这种方式,让模型在预测被mask掉的部分时,既能考虑前面、后面的序列,也能考虑同一时间段没有被mask的序列。

在这里插入图片描述

下图展示了无监督预训练时间序列模型对时间序列预测任务带来的效果提升。左侧的图表示,不同有label数据量下,是否使用无监督预训练的RMSE效果对比。可以看到,无论有label数据量有多少,增加无监督预训练都可以提升预测效果。右侧图表示使用的无监督预训练数据量越大,最终的时间序列预测拟合效果越好。

在这里插入图片描述

1.4 时序领域采样

本文提出的方法在正负样本的选择上和损失函数的设计上相比上一篇文章有一定区别。首先是正负样本的选择,对于一个以时刻t为中心的时间序列,文中采用一个高斯分布来划定其正样本的采样范围。高斯分布以t为中心,另一个参数是时间窗口的范围。对于时间窗口范围的选择,文中采用了ADF检验的方法选择最优的窗口跨度。如果时间窗口范围过长,可能导致采样的正样本和原样本不相关的情况;如果时间窗口过小,会导致采样的正样本和原样本重叠部分太多。ADF检验可以检测出时间序列在保持稳定的时间窗口,以此选择最合适的采样范围。

在这里插入图片描述

在损失函数方面,文中主要解决的是伪负样本的问题。如果将上面选定的窗口外的样本都视为负样本,很有可能会出现伪负样本的情况,即本来是和原样本相关的,但因为距离原样本比较远而被误认为是负样本。例如时间序列是以年为周期的,时间窗口选择的是1个月,可能会把去年同期的序列认为是负样本。这会影响模型训练,使模型收敛困难。为了解决这个问题,本文将窗口外的样本不视为负样本,而是视为没有无label样本。在损失函数中,给每个样本设定一个权重,这个权重表示该样本为正样本的概率。这种方法也被称为Positive-Unlabeled (PU) learning。最终的损失函数可以表示为如下形式:

在这里插入图片描述

1.5 多变量时间序列

本文的时间序列表示学习方法思路来源于经典的词向量模型CBOW。CBOW中的假设是,一个单词的上下文表示应该和该单词的表示比较近,同时和其他随机采样的单词表示比较远。本文将这种思路应用到时间序列表示学习中,首先需要构造CBOW中的上下文(context)和随机负样本,构造方法如下图所示。首先选择一个时间序列xref,以及xref中的一个子序列xpos。,xref可以看成是xpos的context。同时,随机从其他时间序列,或者当前时间序列的其他时间片段中采样多个负样本xneg。这样就可以构造类似CBOW的损失函数了,让xref和xpos离得近,同时让xref和其他负样本xneg距离远。

在这里插入图片描述

在模型结构上,本文采用了多层空洞卷积的结构,这部分模型结构在之前的文章中有过详细介绍,感兴趣的同学可以参考:12篇顶会论文,深度学习时间序列预测经典方案汇总。

在这里插入图片描述

reference

ref1

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

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

相关文章

告别原始 UI 样式,拥抱 Fluent Design 风格 PyQt/PySide 组件库

简介 这是一个使用 PyQt/PySide 编写的 Fluent Design 风格的组件库,支持亮暗主题无缝切换和自定义主题色,搭配 QtDesigner 可以快速开发美观的界面。github 仓库地址为 https://github.com/zhiyiYo/PyQt-Fluent-Widgets ,演示视频可以在哔哩…

夏至后,这些农事活动要注意管理

夏至过后,温度会进一步攀登,较高的气温和光照会让夏作物生长更加旺盛。接下来就让我们看看在这些夏作物在种植时都需要注意哪些方面吧! 一、蔬菜管理 夏白菜、夏甘蓝、夏菜花都是在6月下旬开始育早熟的菜花苗,秋大棚中的芹菜也是…

超强总结,性能测试实战(购物业务板块)真实压测场景...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 购物网站购物流程…

人工智能(pytorch)搭建模型13-pytorch搭建RBM(受限玻尔兹曼机)模型,调通模型的训练与测试

大家好,我是微学AI,今天给大家介绍一下人工智能(pytorch)搭建模型13-pytorch搭建RBM(受限玻尔兹曼机)模型,调通模型的训练与测试。RBM(受限玻尔兹曼机)可以在没有人工标注的情况下对数据进行学习。其原理类似于我们人类学习的过程&#xff0c…

Redis简单动态字符串SDS

目录 前言 一.SDS定义 二.SDS与C字符串的区别 2.1 常数复杂度获取字符串的长度 2.2 杜绝缓冲区溢出 2.3 减少修改字符串时带来的内存重分配次数 2.3.1 空间预分配 2.3.2 惰性空间释放 2.4 二进制安全 2.5 兼容部分C字符串函数 2.6 总结 三.SDS缺点 前言 Redis没有直接使用C语…

gRPC教程与应用

gRPC是是谷歌一个开源的跨语言的RPC框架,面向移动和 HTTP/2 设计。 grpc中文网 在 gRPC 里客户端应用可以像调用本地对象一样直接调用另一台不同的机器上服务端应用的方法,使得您能够更容易地创建分布式应用和服务。 gRPC 也是基于以下理念&#xff1…

python3+requests+unittest接口自动化测试

1.环境准备 python3 pycharm编辑器 2.框架目录展示 (该套代码只是简单入门,有兴趣的可以不断后期完善) (1)run.py主运行文件,运行之后可以生成相应的测试报告,并以邮件形式发送;…

【C++进阶】红黑树实现

文章目录 红黑树的概念红黑树的性质红黑树节点的定义红黑树结构红黑树的插入1.按照二叉搜索的树规则插入新节点2.进行旋转和变色源码 红黑树的验证中序遍历判断是否满足二叉搜索树判断是否满足红黑树 完整源码 红黑树的概念 红黑树,是一种二叉搜索树,但…

基于spss的多元统计分析 之 单/双因素方差分析 多元回归分析(1/8)

实验目的: 1.掌握单样本t检验、两样本t检验、配对样本t检验、单因素方差分析、多元回归分析的基本原理; 2.熟悉掌握SPSS软件或者R软件关于单因素、多因素方差分析、多元回归分析的基本操作; 3.利用实验指导…

2.3C++保护成员

C 保护成员 在C中,可以使用保护成员 protected,来提高代码的安全性。 我用大白话解释一下什么是保护成员:说白了就是为了防止其他类直接访问或修改其成员加的一个措施。 目的是保护,成员的私有性和可见性。 C 类的保护 可以为…

web 语音通话 jssip

先把封装好的地址安上(非本人封装):webrtc-webphone: 基于JsSIP开发的webrtc软电话 jssip中文文档:jssip中文开发文档(完整版) - 简书 jssip使用文档:(我没有运行过,但…

Nginx服务器,在window系统中的使用(前端,nginx的应用)

简介:Nginx是一个轻量级、高性能的HTTP和反向代理web服务器,且支持电子邮件(IMAP/POP3)代理服务,特点是占用内存少,并发能力强,给我们来了很多的便利,国内大部分网站都有使用nginx&a…

18款奔驰S350升级后排座椅记忆功能,提升您乘坐舒适性

带有记忆功能的座椅可以存储三个的座椅设置以及行车电脑中的舒适性设置。只要按一下按钮就可以跳到记忆模式,让座椅回到上一次设置。

使用 BigQuery Omni,发现跨云地理空间分析的优势

【本文由 Cloud Ace 整理发布。Cloud Ace 是谷歌云全球战略合作伙伴,拥有 300 多名工程师,也是谷歌最高级别合作伙伴,多次获得 Google Cloud 合作伙伴奖。作为谷歌托管服务商,我们提供谷歌云、谷歌地图、谷歌办公套件、谷歌云认证…

第十章详解synchronized锁升级

文章目录 升级的流程为什么要引入锁升级这套流程多线程访问情况具体流程 轻量级锁如何使用CAS实现轻量级锁CAS加锁成功CAS加锁失败CAS进行解锁 总结何时变为重量级锁 锁膨胀自旋优化 偏向锁主要作用偏向状态测试撤销偏向锁 撤销 - 调用对象 hashCode撤销 - 其它线程使用对象撤销…

js:codemirror实现在线代码编辑器代码高亮显示

CodeMirror is a versatile text editor implemented in JavaScript for the browser. It is specialized for editing code, and comes with a number of language modes and addons that implement more advanced editing functionality. 译文:CodeMirror是一个多…

第二章:软件工程师必备的网络基础

目录 一、网线的制作 二、集线器、交换机介绍 三、路由器的配置 一、网线的制作 1.1、水晶头 ​​​ 1.2、网线钳 1.3、网线的标准 T568A标准(交叉线): 适用链接场合:电脑-电脑、交换机-交换机、集线器-集线器 接线顺序&…

【正点原子STM32连载】第三十九章 触摸屏实验 摘自【正点原子】STM32F103 战舰开发指南V1.2

1)实验平台:正点原子stm32f103战舰开发板V4 2)平台购买地址:https://detail.tmall.com/item.htm?id609294757420 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html# 第三…

有源电力滤波器及配电能效平台在污水处理厂中的应用

【摘要】为减少污水处理设备产生的各次谐波,通过确定主要谐波源,检测和计算谐波分量,采用有源电力滤波器进行谐波治理,大幅降低了电力系统中的三相电流畸变率,提高了电能质量;抑制了谐波分量,减…

doris docker部署和本地化部署 1.2.4.1版本

写在前面 以下操作语句按顺序执行即可,注意切换目录的命令一定记得执行,如果需要改动的地方会有${}注释,其余不需要任何改动,默认安装版本为1.12.4(稳定版) 本地化部署 下载 # 创建目录 mkdir /data/sof…