【VLDB2022】NLC:在长时间序列上搜索相关窗口对

物联网和工业互联网等许多应用不断从传感器收集数据,形成长时间序列。查找时间序列之间的相关性是许多时间序列挖掘问题的基本任务。然而,现有的大多数研究要么仅限于检测关系的类型,例如仅检测线性相关性;要么不处理复杂的时间关系,例如不考虑未对齐的时间窗口或可变窗口长度。本次为大家带来数据库领域顶级会议VLDB2022的论文:《NLC: Search Correlated Window Pairs on Long Time Series》。

ba0b78ce0d7ad7b601d0d1cd1a650eef.png

一.背景

由于传感器数据收集频率的增加和分布式存储系统的快速发展,许多最新的应用程序产生了大量的长时间序列。在分析时间序列数据时,一项基本任务是评估时间序列之间的相关性;在对时间序列进行搜索、分类以及聚类时,相关性可以直观且方便地进行相似性度量。然而,在分析长时间序列时,测量时间序列之间的相关性变得困难。这是因为通常情况下两个时间序列可能在某些时间间隔上相关,但在很长一段时间内始终相关的几率非常小;基于此,广泛使用的全局度量(例如皮尔逊系数)在分析长时间序列时是无效的。虽然目前也存在着一些局部的相关性挖掘工作,但其都旨在从长时间序列对中挖掘局部线性相关性。事实上,在许多应用中,由于复杂的物理或化学机制,时间序列具有很强的非线性关系。

因此,本论文采用互信息(MI)进行相关性度量,它是信息论中两个随机变量之间相互依赖关系的度量方法,广泛用于变量域,可以发现各种类型的相关关系,包括线性和非线性,单调和非单调,泛函和非泛函。

但是,如何有效地搜索具有高互信息值的窗口对的相关工作很少,其主要难点有:首先,计算MI它需要估计每个点的密度函数,因此比传统的测量(如皮尔逊相关性)成本高得多;其次,相关性发生在可变时延的变长窗口中,这大大增加了搜索空间;第三,它不是单调的,阻碍了我们使用传统的修剪策略。

基于此,本论文提出了一种两阶段方法,即非线性相关搜索(简称NLC)。在第一个阶段,生成一组候选的相关窗口对,利用窗口收缩和窗口扩展两种策略。其中,窗口收缩适用于稀疏分布的相关性,可以快速修剪不符合的时间间隔;窗口扩展略慢,但当相关窗口分布更密集时,可以找到更多符合的窗口对。在第二阶段,利用嵌套的一维搜索策略对相关的窗口对候选进行优化。

二.定义

时间序列XX={ x1,x2,…,xn}是按时间顺序排列的数据序列。

时间窗口W=(s,l)s是时间窗口的起点,l是时间窗口的长度。

时间窗口对(X(s,l),Y(s’,l))<s,l,τ>:两个时间窗口X(s,l)Y(s’,l)的窗口长度l一样,但窗口的起点可能不一样。令时间延迟τ=s’-s,则时间窗口对可以表示为<s,l,τ>

三.方法介绍

3.1 总体框架

1为论文提出的NLC算法概述。

阶段一:生成窗口对候选集b561e0f116210418da6a551d041385e2.png。每一个候选的窗口对需要确定大致起点位置s和窗口长度l以及确切的延迟τ。生成候选集采用两种策略,窗口收缩和窗口扩展。

阶段二:窗口优化。利用一维搜索算法对候选集dd5107a984e02b5722e846ad92f0c7b6.png进行优化。

8ff1fd5dcfcf5c97cef3d9ad3c61f4d1.png

1 算法概述

3.2 阶段一:候选集生成

阶段一采用两种策略,窗口收缩和窗口扩展。窗口收缩,首先找到可能包含相关对的大窗口,再通过修剪不相关的部分来缩小窗口。窗口扩展,首先对小窗口进行定位,再将其扩展到适当的长度。

窗口收缩

我们的目标查找大小在[Lmin,Lmax] 范围内的所有相关窗口对。我们不是直接计算每对的户互信息MI,而是利用一个比Lmax更大的窗口来过滤不合格对象,该窗口被称为信封窗口,其大小为we。形式上,我们将X拆分为一系列长度为we的不相交的信封窗口(X1,X2,…,Xn/we)。假设在每个窗口Xi中最多存在一个比Y更小的相关窗口。

然后,我们逐一访问信封窗口(X1,X2,…,Xn/we),以确定是否包含候选窗口对。计算窗口Xi(spi,,we)和所有延迟的窗口Y(spi+τ,,we)的互信息MI,其中τmin ≤ τ ≤ τmax。若所有的MI值均小于阈值θ0,则确定无相关对并移至下一个信封窗口Xi+1;否则,选取具有最大MI值的窗口Y(spi+τ,,we)作为候选窗口,这意味着有可能在X中存在一个窗口,与Y(spi+τ,,we)中具有延迟τ的窗口相关。

e435fbd66c11ce72fc386b1648fb9354.png

图2 窗口收缩

通过图二(a)举例说明,其中θ0=0.3we=2000。对于窗口X2(2001,2000), Y(2001,2000)Y(2051,2000)会被修剪排除,因为其MI值小于阈值θ0=0.3。由于Y(1951,2000)具有最大MI值,故生成候选窗口<2001,2000,-50>。同样地,对于窗口X5(8001,2000)Y(8001,2000)Y(8051,2000)MI值大于0.3,最终候选窗口为<8001,2000,0>

显然,候选窗口可能包含不相关的部分,因为它具有较大的窗口长度和较小的阈值。因此,我们需要进行进一步的修剪。具体地说,我们将信封窗口拆分为一系列较小的不相交窗口,并修剪两端的不相关窗口。形式上,我们首先将信封窗口划分为长度为miniL的窗口,称为迷你窗口。然后,从左端修剪迷你窗口。我们计算X(s,miniL)Y(s+τ,miniL)MI值。如果MI值小于阈值,我们丢弃它并移动到第二个迷你窗口。这个过程一直持续到我们遇到MI值大于阈值的窗口。然后我们以类似的方式从右端修剪迷你窗口。两端调整后,我们再次计算剩余部分的MI值,如果MI值超过阈值,则将其添加至候选集中。

通过图二(b)举例说明,信封窗口为<8001,2000,0>miniL=2000。在左侧,我们修剪迷你窗口直到(8051,100);在右侧,我们修剪迷你窗口直到(9301,100)。其余部分是(8501,800)。我们重新计算该部分的MI值为0.7,大于阈值,故将<8501,800,0>加入候选集中。

窗口扩展

当相关对密集分布时,如果我们仍然使用大窗口,可能会出现两个不同的相关对出现在一个信封窗口中,这将导致某些相关对被忽略,因为我们只在一个信封窗口中保留一对。因此,窗口扩展策略是使用小窗口来查找候选窗口。

我们考虑用长度为Lmin的窗口来遍历X。假设当前窗口为X(sp, Lmin),我们计算与所有窗口Y(s+τ,Lmin)MI值,其中τmin ≤ τ ≤ τmax。如果所有MI值均小于阈值,则确定此窗口无相关对,并移动下一个窗口X(sp+ Lmin, Lmin);否则,我们选择产生最大MI值的τ组成窗口对<sp,Lmin , τ>

与窗口收缩不同,由于窗口较小,我们在这找到的相关对可能只是整个对的一小部分。因此,我们需要在两边进行扩展来找到完整的窗口对。对于窗口对X(sp,Lmin)Y(sp+τ,Lmin),我们产生两个对窗口对CP1=<sp,Lmin+Lmax,τ>CP2=<sp-Lmax,Lmin+Lmax, τ>。然后,我们对CP1CP2利用长度为miniL的迷你窗口进行修剪操作,并获得两个较短的对;再比较其对应的MI值,将MI值较大的窗口对加入到候选集1f591c6e44892ead42f0030469d75443.png中。

c25b2c2723007c2f3b9e8bfba7673344.png

3 窗口扩展

通过图3举例说明,其中θ0=0.3,长度范围为[300,600],所以我们使用长度为300的串口进行修剪。在τ=0时,即窗口为(8501,300)MI值最大(从橙色线),故选该窗口进行扩展。扩展后,获得两个候选窗口CP1=<8501,900,0>CP2=<7901,900,0>(分别为紫色线和蓝色线)。在利用miniL长度的迷你窗口进行修剪后,CP1MI值(从蓝色线看出MI0.8)更大,故将其添加到候选集。

3.3 阶段二:候选集优化

对每个候选对CP=<s,l,τ>,我们想要找到窗口对<s*,l*,τ>满足(s*,l*)(s,l)MI值最大,则s*l*是最佳起点和最佳长度。最基本的做法是遍历所有的sl,以找到最佳的s*l*,但这会花费大量计算。因此,本文采用了DIRECT策略来加速搜索过程。DIRECT 可以通过迭代有效地确定全局最优值,其基本思想是将搜索空间划分为区间,并通过采样和评估每个区间的中心点来选择要搜索的矩形。

对于候选对CP=<s,l,τ>,搜索空间是一个矩形:起点s的搜索范围为[s,s+l-Lmin],长度的搜索范围为[Lmin,Lmax]。由于起点s和长度l是高度相关,不适用于DIRECT依次划分维度,故本文提出了一种嵌套的一维 DIRECT 搜索策略。基本思想是:在每一轮中,我们将当前矩形分成三个大小相等的矩形,左、中、右。然后我们在左边和右边矩形中选取最不可能包含点(s*,l*)的那个矩形进行删除,以此来缩小矩形。其中,包含点(s*,l*)的可能性由中心点的MI值进行评估。先上述方法寻找最佳起点s*,直至矩形缩小到比阈值小;再用同样的方法寻找最佳长度l*(s)。最后,再验证优化的窗口对是否有效,即<s*,l*,τ>MI值是否大于阈值。若是,则将其添加到最终集合c0c31d2f4e472a0ac513d15f4bffdf04.png中。

b8bbc14968451f8bf410d7268844869a.png

4 搜索过程

通过图4举例说明。在左图中,蓝色曲线是 [1001,1900] 范围内不同起点的MI值。我们的目标是在此范围内找到具有最高MI值的最佳起点。在第一轮中,我们将其分为三个等长范围S1=[1001,1300], S2=[1301,1600]S3=[1601,1900],并获取中心点s1, s2, s3。然后,我们找到s1, s3l*(这将在后面阐述)。然后,再比较(s1,l*(s1))(s3,l*(s3))MI值。因为(s1,l*(s1))MI值较小,故我们删除矩形S1并生成一个较小的范围[1301,1900]。在第一轮中,我们再次将范围[1301,1900]分为三个范围S4, S5S6。可以看出,经过三轮,s5处的MI值非常接近最高。

4 的右侧显示了在第一轮中搜索l*(s2)。我们将范围[300,600](Lmin=300,Lmax=600)拆分为三个范围L1,L2,L3,其中点分别为l1=500,l2=450,l3=350。我们直接计算MI(s2,550)MI(s2,350),然后删除L1,因为MI(s2,550)更小。然后,一直迭代搜索范围[300,500]直至找到小于阈值的最佳长度l*(s2)

四.实验

4.1 数据集

我们使用五个数据集进行实验,包括两个合成数据集和三个真实数据集。两个合成数据集分别具有线性和非线性相关,其长度为100000,其中值是从标准正态分布中随机选取的;三个真实数据集分别为TE datasetStock market datasetElectrical dataset,其参数如表1 所示:

真实数据集参数设置

db29fe695c3c706ca4c6980a3bca9d67.png

4.2 比较方法

在本文中,NLC与三种基线方法进行了比较:TYCOSMASSJocor

TYCOS从长时间序列对中提取非线性相关窗口对,将延迟接受爬山[1]与窗口方法相结合,以执行自下而上的相关窗口对搜索。

MASS可以有效地找到与长时间序列中的查询最相似的子序列。由于MASS的初衷与我们的问题不同,因此需要进行一些调整。

Jocor寻找长度超过最小长度阈值的相关性最高的窗口对,并使用 PCC 作为度量。

4.3 评价标准

算法通过精度、召回率和F1值来衡量。

4.4 合成数据集上,各种算法的比较

NLCENLCS分别表示带有窗口扩展策略的NLC算法和带有窗口收缩策略的NLC算法

27a1473c64d31496ca67b3b2a48267eb.png

5 算法比较(左图为线性数据集,右图为非线性数据集)

如图5左图所示,在线性数据集上,NLCE实现了最高的精度、召回率和 F1值;NLCS的精度是第二高的,但它比NLCE更高效,即运行时间短。MASSF1值排名第二,但精度略低;这是因为MASS倾向于寻找更多可能包含噪音的窗口。Jocor的精度非常高,而由于搜索空间减少,召回率低于MASS。由于预处理步骤,除了TYCOS之外,运行时间要大得多。TYCOS在这里表现不佳主要是因为它只尝试了延迟参数的几个可能值。

如图5右图所示,在非线性数据集上,NLCE的三个指标上都达到最佳,NLCS排在第二位。与线性数据集的结果不同,MASSJocor虽然更有效,但在处理非线性相关性时效果不佳,这证明了基于MI的方法的优势。与NLCE相比,NLCS的优点是效率更高,并且在相关对密度较低时也可以达到较高的F1值,从表2中可以看出。

2 NLCENLCS的比较

b286abb0370e6312a2e1a81d2fe426e9.png

五.总结

该论文研究了两个长时间序列中的非线性相关搜索问题,提出一个两阶段的方法。在第一阶段,提出了两种策略来产生候选窗口对:窗口收缩策略适用于稀疏分布的相关性,而窗口扩展策略稍慢,但当相关性密集分布时,可以找到更多的对。在第二阶段,我们提出了一种嵌套搜索策略来删除候选窗口对。实验结果验证了NLC的有效性和高效性。

参考文献

[1]Edmund K Burke and Yuri Bykov. 2017. The late acceptance hill-climbing heuristic.European Journal of Operational Research 258, 1 (2017), 70–78.

作者:吴怡   学校:重庆大学

推荐阅读:

我的2022届互联网校招分享

我的2021总结

浅谈算法岗和开发岗的区别

互联网校招研发薪资汇总
2022届互联网求职现状,金9银10快变成铜9铁10!!

公众号:AI蜗牛车

保持谦逊、保持自律、保持进步

发送【蜗牛】获取一份《手把手AI项目》(AI蜗牛车著)
发送【1222】获取一份不错的leetcode刷题笔记

发送【AI四大名著】获取四本经典AI电子书

猜你喜欢

转载自blog.csdn.net/qq_33431368/article/details/129920104