分段聚合近似法

来自testwiki
跳转到导航 跳转到搜索

分段聚合近似法(英文:Template:LangTemplate:Lang)是一种时间序列数据的降维方法,最早由Template:TslTemplate:Lang)等人提出,用于建立时间序列索引[1]。相比于离散傅里叶变换离散小波变换奇异值分解等降维方法,分段聚合近似法操作比较简便,适用于更多距离度量,例如加权欧氏距离。并且分段聚合近似法还适用于索引长度和查询长度不同的情况[2]。如今分段聚合近似法已经成为一种广泛应用的时间序列处理方法[3][4]

定义

设时间序列X=x1,...,xn的长度为n。将其用一条长度为N的向量X表示,Xi个元素的定义为[5]Xi=Nnj=nN(i1)+1nNixj

简言之,为了将原始时间序列从n维降低到N维,需要将原始数据分割成N个等长的分段,在每个分段内计算均值就可以得到降维后的数据表示。

N=n时,分段聚合近似法得到的向量就是原始时间序列本身,当N=1时,分段聚合近似法得到的得到值就是原始时间序列的均值[6]

索引建立方法

用分段聚合近似法建立用于子序列匹配的索引的时间复杂度为O(nm)。因为对于大约m个“窗口”,每个分段都要用上述公式计算N次,并且上述公式要对长度为nN的部分求和。埃蒙·基奥(Eamonn Keogh)提出了一种快速计算的方法,可以将时间复杂度降低到O(Nm): 每次计算时只要从上次的结果减去上一段离开“窗口”的数据点的部分,加上新进入“窗口”的数据点的部分即可。在第j个“窗口”内的第i个值可以通过以下公式更新[7]xji=xj1iNnxnN(i1)+1+NnxnNi+1

应用领域

作为一种时间序列降维方法,分段聚合近似法得到了广泛的应用,是一些时间序列的低维表示方法的前期处理步骤之一[8]。 在使用分段聚合近似法建立索引后,为了进行各种查询,要使用某种距离DPAA进行Template:Tsl度量。为了避免假阴性情况的出现,所使用的距离需要满足以下特征[9]DPAA(X,Y)D(X,Y) 如果DPAA的定义为: DPAA(X,Y):=nNi=1N(xiyi)2,则满足上述条件[10][11]。一些时间序列的检索方法,例如K-NN的算法中,会使用具有以上特征的距离,根据索引进行初步筛选[12]

參考資料

Template:Reflist

外部連結