#Reading Paper#Correlated Time Series Self-Supervised Representation Learning via Spatiotemporal Boo

#论文题目:Correlated Time Series Self-Supervised Representation Learning via Spatiotemporal Bootstrapping(基于时空引导的相关时间序列自监督表示学习)
#论文地址:https://arxiv.org/abs/2306.06994
#论文源码开源地址:https://github.com/bonaldli/Spatiotemporal-TS-Representation-Learning
#论文所属会议:CASE 2023
#论文所属单位:香港科技大学、商汤研究院、上海交大清远研究院

一、导读

时间序列无监督预训练的文章,相比原来的TS2Vec等时间序列表示学习工作,核心在于提出了将空间信息融入到预训练阶段,即在预训练阶段考虑各个序列之间的关系。因此,本文提出的方法也更适合作为时空预测领域的预训练模型。本文主要有以下贡献:

  1. 大多数过去的方法学习的都是序列整体的表示,而时间序列预测任务更关注每个时间步的表示,因此上下游任务存在一定的不适配问题。

  2. 过去的工作都是在单个时间序列本身上进行预训练,没有考虑到各个序列之间的关系。

  3. 以往的对比学习预训练方法,在构造负样本的过程中经常出现伪负样本问题(即构造的负样本其实应该是正样本),这导致了对模型效果的负向影响。

针对上述3个问题,本文提出了一系列解决方法,核心是在预训练阶段同时考虑时序关系和空间关系,并且将对比学习框架改为不依赖正样本的BYOL。

  1. 提出了一个表示学习框架来学习任意时刻任意实例的点级表示,为了捕捉空间和时间相关性,我们在自监督学习框架中利用了来自预定义相邻矩阵的历史数据和邻域信息。
  2. 为了避免时间序列数据对比学习范式中频繁出现的假阴性,我们在模型中引入了一个无负样本的自监督学习框架。我们定义空间和时间目标,并使用屏蔽视图来预测目标的表示,以学习相关性。

具体来说:

  1. 考虑了周期性(传统的对比学习方法经常受到假阴性样本的问题:基于时间序列数据集的先验知识构建正样本对或负样本,或者对时间序列的数据分布做出强假设。由于正对之间的大量重叠,这些方法可能会丢失各种正对。)
  2. 整个时间序列的表示不能用于推断特定的时间步长或子序列。(有些时间序列表示方法是针对整个时间序列的全局性特征进行建模的,而不是关注单个时间步长的特定信息。这意味着它们可能不具备直接推断或预测某个特定时间步长的能力。例如,一些特征提取方法可能计算整个时间序列的统计属性,这些属性反映了整个序列的趋势和分布,但它们并不包含关于某个时间步长的详细信息;;;;;某些时间序列表示方法也可能难以用于推断时间序列中的子序列。这是因为它们可能无法捕捉时间序列中的局部模式或特定时间段的信息。如果一个表示方法主要关注全局性特征,那么它可能忽略了序列中不同时间段的变化或特点)

二、模型结构

#Reading Paper#Correlated Time Series Self-Supervised Representation Learning via Spatiotemporal Boo_第1张图片

初始定义

时间序列 X X Xi = { x x xi,1, x x xi,2, · · · , x x xi,T }是一系列测量值的时间序列,其中测量值 x x xi,t 在时间戳 t t t 处从第 i i i 个实例记录, T T T 是总时间范围。相关的时间序列集合表示为 X X X = { X X X1 X X X2,· · ·, X X XN},其中来自不同实例的时间序列 X X Xi在空间上彼此相关。为了模拟不同时间序列之间的空间相关性,我们引入一个图 G G G =( X X X A A A),其中 X X X中的每个实例对应于一个单独的时间序列,因此 ∣ X ∣ |X| X = N N N,并且邻接矩阵 A A A R R RN×N 包含权重,用于描述每个单独时间序列之间的空间相关性的强度。例如,在交通流量示例中,每个 X X Xi分别代表由每个传感器记录的时间顺序流量,使用预定义的基于距离的邻接矩阵来描述空间相关性。

问题定义

给定一组相关的时间序列 X X X = { X X X1 X X X2,· · ·, X X XN},其中有 N N N个实例,目标是学习一个非线性嵌入函数 f f f(·),将每个 X X Xi映射到其最佳描述自身的点级表示 r r ri。表示 R R Ri = { r r ri,1, r r ri,2, · · ·, r r ri,T}包含每个时间戳 t t t的每个实例的表示向量 r r ri,t R R RK,其中 K K K是表示向量的维度。

视图和目标的构建

对于单个实例 X X Xi R R R1×T中的滑动子窗口[ t t t, t t t + L L L0],我们随机采样两个具有相同窗口大小 L L L1的重叠子序列,分别从时间 t t t t t t + 1开始。其中, L L L0 L L L1 l l l是预定义的长度,满足 l l l < L L L1 < L L L0 L L L0 = l l l + L L L1。然后,我们随机屏蔽了裁剪子序列 w w wi, t 在时间 T T T = t t t处的一些时间步,并将其称为“视图view”。
具体来说,我们使用一些连续的遮罩对视图 w w wi, t进行遮蔽。对于另一个裁剪的子序列 w w wi, t+l,我们称其为“时间目标target”,以强调视图的时间一致性。根据邻接矩阵,我们采样 x x xi的邻居,表示为 x x xj。类似地,我们裁剪子序列 w w wj, t在时间 t t t处,窗口大小为 L L L1,作为空间目标。
#Reading Paper#Correlated Time Series Self-Supervised Representation Learning via Spatiotemporal Boo_第2张图片

模型具体构建

编码器由三个部分组成:一个输入投影层,一个扩展的复杂CNN模块和一个MLP预测器。对于每个输入 w w w,输入投影层是一个全连接层,它将时间戳 t t t 处的观测值 x x xi,t 映射到高维潜在向量 z z z。然后应用具有十个残差块的扩展复杂CNN模块[29]来提取每个时间戳处的上下文表示。请注意,视图和目标不共享与扩展复杂CNN模块相同的参数。每个扩展的复杂CNN块包含两个具有扩展参数(第 l l l块为2l)的1-D卷积层。如此:扩大的随机卷积为不同的域提供了一个大的接受野[30]。
文章借鉴了BYOL [31] 的思想,通过预测从不同增强视图嵌入的表示来学习自身的表示,而不使用负对比。我们通过预测视图的不同目标(而不是对比)来学习表示。在将视图和目标通过全连接层f映射到高维潜在向量之后,我们使用两个扩张因果神经网络来学习:在线网络 g g gθ和目标网络 g g gφ。这两个卷积网络具有相同的架构,但分别使用不同的权重集 θ θ θ ϕ ϕ ϕ。然后,MLP预测器 p p pθ使用视图的学习表示 r r rv以联合方式预测目标的表示。 g g gθ p p pθ的参数通过梯度更新,而 g g gφ的参数通过指数移动平均算法进行更新,以避免模型崩溃 [31]。

模型损失函数方式具体不细数了,详情请看论文。
#Reading Paper#Correlated Time Series Self-Supervised Representation Learning via Spatiotemporal Boo_第3张图片

三、模型评价

#Reading Paper#Correlated Time Series Self-Supervised Representation Learning via Spatiotemporal Boo_第4张图片

四、对比分析

为了验证我们的模型中时间和空间组件的有效性,我们在METRLA数据集上比较了不同超参数α值的模型性能。我们以0.25的间隔从0到1改变α的值,其中α = 1表示我们仅使用历史信息,α = 0表示我们仅考虑空间相关性。
#Reading Paper#Correlated Time Series Self-Supervised Representation Learning via Spatiotemporal Boo_第5张图片

当α = 0.5时,我们的模型在短期预测中表现最佳。当时间目标的贡献大于空间目标时,或者当α = 0.75时,模型对长期预测的性能更好。这是因为,对于相对长期的预测,包含历史模式的单个实例的时间信息对我们的模型贡献更大。此外,我们的方法的性能明显下降w/o时间目标或w/o空间目标。
对于较小的α,例如α = 0.25,预测性能比较大的α(例如α = 0.75)更稳定。这表明空间目标的设计可以提高我们的表征学习框架的鲁棒性。

你可能感兴趣的:(推荐算法,序列推荐,推荐算法,python)