相似性挖掘在时间序列数据中的应用研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相似性挖掘在时间序列数据中的应用研究
摘要:针对时间序列的数据挖掘首先需要将时间序列(Time Series)数据转换为离散的符号序列(Symbol Sequence)。在前人的基础上,将界标模型和分段线性化进行了结合,以关键点作为分段依据,以最大似然函数和最小二乘法来拟合各分段线性拟合函数;此方法的优点在于符合人体生理实验结果,考虑了时间序列中的噪声。
关键词:时间序列;相似性挖掘;线性化分段;关键点
0 引言
时间序列是人们工作和生活中经常遇到的一类重要的数据形式.对时间序列进行分析,可以揭示事物运动变化和发展的内在规律,对于人们正确认识事物并据此作出科学的决策具有重要的现实意义。数据挖掘(Data Mining)也称知识发现(Knowledge iscovery),是一种新兴的面向决策支持的数据处理手段。针对时间序列的数据挖掘研究从大量时间序列历史数据中发掘有价值的规律性信息的算法及实现技术,也是一个新的、极具挑战性和有着重要应用前景的研究领域。
1 时间序列相似性的挖掘
时间序列是指按时间变化的序列值或事件,时间序列数据库是指由随时间变化的序列值或事件组成的数据库。这些值或事件通常是在等时间间隔测得的。以股票每天的交易记录为例来说明上述定义,rj={600000,浦发银行,24.8,26.3,24.2,25.8,255105,62},其中600000是股票代码,浦发银行是股票名称,接下来的分别为当天的开盘价、
最高价、最低价、收盘价、成交量以及第62个交易日。前两个特性显然与时间无关,为静态特性,而其他特性值是与时间密切相关的,是动态特性。很显然,对于静态特性研究的意义不大。
对于时间序列的相似性测量,不同的数据表达形式相似性测量的方法也不尽相同。常用的测量方法主要有以下3种。
(1)欧几里德距离测量方法。对于时间序列数据的相似性分析中,经常采用欧几里德距离作为相似计算的工具。采用欧氏距离进行测量的优点是容易计算,易于理解,可以用于索引和聚类等数据挖掘。它的缺点是对序列中的噪声很敏感,而且欧氏距离会随着序列长度的增加而增加。而实际的时间序列数据往往会很长,含有较多的噪声,仅仅通过简单的欧几里德距离测量方法不能正确做出两个时间序列是否相似的判定,同时由于数据量很大,相似性的计算效率也很低;欧氏距离也不允许有不同的基线,如当两支股票分别在¥20和¥80进行波动时,尽管他们的波形很相似,但是其欧氏距离会很大。
(2)相关性测量。另一个相似性测量方法不但能够将相似性作为位置的函数,而且不必对原始数据库的时间序列产生所有的长度为n 的子序列。一个目标时间序列{xi}和时间序列数据库中的序列{yi}之间的线性相关定义如下:
C-i=∑+n-j=1x-jy-i+j[]∑+n-j=1x+2-j∑+n-j=1y+2-j(1)
其中i=1,……,N+n-l.这种相关性的计算对于{xi}比较长的时间序列的计算花费是很大的,在这种情况下,傅立叶变换的卷积定理提
供了一个很好的解决办法。首先在{xi}和{yi}的末尾补充0使得两个时间序列变为长度都为1=N+n-1的新序列{xi}和{yi},然后对{xi}和{yi}进行离散傅立叶变换生成{Xi}和{Yi},最后通过逐点相乘{Xi}和{Yi}就会得到相关系数,结果转化为如下形式:
C-i=F+{-1}{X+*-jY-j}[]∑+n-{j=1}X+2-j∑+N-{j=1}Y+2-j(2)
式(1)和(2)在Parseval's Theorem 1上是一致的。如对{xi}和{yi}进行合适的规范化处理,则作为相似性测量参数的相关性因子ci,的值将在[-1, 1]的范围内,如为1则说明两个时间序列完全匹配。当存在干扰信号时,相关因子的值一般小于1,而且序列值{ci}峰值的位置就是{xi}中与{yi}匹配的可能位置。
(3)动态时间弯曲法(DTW, Dynamic Time Warping)。欧氏距离由于时间轴的微小变形都会被引起很大的变化,因此不再适用于时间轴有轻微变形的时间序列相似性的测量。而动态时间弯曲距离可有效消除欧氏距离的缺陷,它允许序列在时间轴上的偏移,序列各点不要求一一对应,并且能够计算不同长度序列之间的距离。欧氏距离和动态时间弯曲距离计算时序列两个时间序列的虽然形状相似,但是它们在时间轴上并不是完全对齐的,因此用欧氏距离计算相似性结果将会是距离很大,可能会导致产生不相似的结果。
2 分段线性化描述时间序列
本文提出将界标模型和分段线性化方法相结合,用关键点(符合一定条件的一阶界标)作为直线段的端点,以关键点为边界划分成各
子序列,各子序列考虑实际采样点的振幅值的分布,以最大似然函数和最小二乘法拟和线段求出各分段线性拟合函数y=a+bx。同时以线性拟合函数式中b的值为形态相似比较的基本单元,提出了一种新的相似性测量公式,该公式对时间序列的多种变形都不敏感。
2.1 检索关键点
假设一下分段函数模型能够拟合时间序列X:
X=f-1(t,w-1)+e-1(t) 1≤t<a-1
f-k(t,w-k)+e-k(t) a-{k-1}≤t<a-k=N(3)
其中a=(a1,a2,…ak)是时间序列X的关键点的集合,关键点是时间序列趋势上升或下降的变化的分界点。e1(t),e2(t),…,ek(t)是第i段的绝对误差项,ei(t)为满足均值为零的高斯白色噪声分布的函数。f(t,w)为时间序列第i段的拟合多项式函数(1≤i≤k),wi 是系数向量,f(t,w)∈M,M为线性模型。
检索关键点的算法如下:
输入:时间序列X:增幅比阙值§;
输出:关键点集合cp0。
算法描述:
(1)扫描时间序列数据库,找出时间序列库振幅最大值xmax,最小值xmin 。
(2)规范化预处理时间序列。
方法就是对各点的振幅xi,作如下变换:
x-i=(x-i-x-{max}+x-{min}[]2)/(x-{max