时间序列相似性研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
时间序列相似性研究
张璐
辽宁工程技术大学理学院,辽宁阜新(123000)
E-mail:zhanglu85517@
摘要:时间序列作为一种数据形式,广泛存在于各种商业、医学、工程、自然科学和社会科学等数据库中。
本文通过对时间序列数据挖掘的概述,引出时间序列相似分析研究方法,同时在各种相似性定义研究的基础上,说明了欧氏几何距离作为时间序列相似性度量标准的不足之处,总结出了一种较为统一的时间序列相似性概念体系;并利用股票数据讨论了DFT(基于正交变换), PAA(基于形态)两种具有代表性的现代时间序列相似性分析方法,说明其在预测和数据处理算法复杂度上的应用,同时对基于这两种思路的相似性研究的主要方法做出综合比较,总结出好的相似性研究方法的共有特征;就算法的准确度,本文提出了基于PLR的算法改进。
关键词:时间序列;相似性;分段线性
1.引言
现代的时间序列分析技术主要是从距离、频域、序列变换、序列外形特征提取等几个方面来对时间序列进行研究。
目前,很多研究人员将时间序列相似性定义为高维空间中的距离,如欧氏几何距离。
由于离散傅立叶变换[1](DFT, Discrete Fourier Transform)具有保持欧氏几何距离不变的特点,因而只保留DFT的头几个系数,就可以实现数据的高度压缩和快速比较。
但DFT方法平滑了原序列中局部极大值和局部极小值,因而导致许多重要信息的丢失,而且对非平稳序列也不适用。
自从DFT被Agrawal最早应用于时序数据相似性搜索后,又有其他一些论文相继提出了DFT的许多扩展和改进方法[6],但核心思想并没有什么变化。
Chan等人提出Haar小波变换方法,试图对DFT方法进行改进,但类似的问题仍然存在。
Last等人提出采用关键特征(如斜率和信噪比)表征原序列[9],Guralnik等人采用一个字符表来压缩序列,都得到了高压缩率,但对序列的描述能力有限,因而在其它许多领域都不适用。
Korn等人提出的奇异值分解[2](SVD)法是一种完全不同的方法,但其计算量相当大,而且数据动态变化后需要重新计算。
Keogh等人先后又提出的分段累积近似法[3](PAA, Piecewise Aggregate Approximatio),分段线性分割(PLR, Piecewise Linear Representation),和适应性分段常数近似法(APCA, Adaptive Piecewise Constant Approximation)等分段方法,以及Perng等人提出的界标模型(Landmark Model)。
与此同时,还有许多相应的其他时间序列分析方法,这些表示方法或是以上各种方法思路的外延,或是从其他角度试图对时间序列相似性分析进行研究,这些方法各有所长,为时间序列相似性研究提供了诸多可以借鉴与参考的方向。
本文对已有的现代时间序列相似性研究主要方法作了系统概述,并利用股票数据分析了基于正交变换的算法与基于形态的算法的优缺点,同时对相似性方法作出了实例应用,并且就分段线性表示算法的准确度,本文总结并提出了基于PLR的改进算法。
2.基于PLR算法的改进
2.1 时间序列分段算法
所有分段算法都需要一种度量来判别如何进行分段计算[4],目前使用最广泛的是三种拟合误差:(1)累计残差;(2)平均残差;(3)最大偏差。
设S是长度为L的时间序列
{}12,,...,L S y y y = (2-1) 其对应K 个分段的PLR 模型为
()(){}K KR KL R L P t y y t y y S ,,,...,,,111= (2-2)
令a 与b 分别是PLR 模型中第i 个分段开始时间和结束时间,即
11+=−i t a (2-3)
i t b = (2-4)
S[a:b]为是S 从a 到b 的一个子序列,记为
[]:S a b ={}b a a y y y ,...,,1+ (2-5)
其中,L b a ≤≤≤1。
设对应第p 个分段拟合数据表示为:
[]{}
''1'',...,,:b a a P y y y b a S += (2-6) 有
()a
b y y b u y y iL iR iL u a −−−+=+' (2-7) 对应拟合误差表示为
[]:E a b ={}{}
''11'1,...,,,...,,b b a a a a b a a y y y y y y e e e −−−=+++ (2-8) 对分段直线各个误差定义如下,AE —累积残差,ME —平均残差,DE —最大偏差
AE =∑=b
a u u e 2
(2-9) ME =1
+−a b AE (2-10) DE =u u e Max (2-11)
2.2 改进算法
目前的PLR 算法对原始数据都采用一种的误差阀值,而时间序列在不同的地方具有不一样的线性度,对时间趋势表示而言,分段的结果不能令人满意[5]。
主要有两类问题:一是采用累积残差作为分段标准的算法不能有效识别短时间内数据相对较大的趋势变换;二是采用平均误差的分段算法对长时间相对拟合较好数据的趋势分界(拐点)识别存在现较大偏差。
累积残差是分段序列中各个点拟合误差的直接累积,对各点与拟合直线的离散程度并不敏感,因此对短时间内较大波动的子序列数据动态性刻划比较差。
如图2-1所示,从75到100这一部分,是一个典型的短时大波动数据,显然依照目前的划分,覆盖了原始数据的一个趋势变换。
而对于平均残差ME ,当分段子序列比较长的时候,即b a −比较大,ME 的计算式中由于分母变大,使得对累积残差AE 的敏感度降低。
这样,会造成趋势分界点误差增大。
如图2-2所示,由于45到75的子序列比较长,造成划分时间与实际趋势变化时间存在比较大的误差。
图2-1 累积残差分段效果图
Fig.2-1 The effect map of cumulative residualaverage residual subparagraph
图2-2 平均残差分段效果
Fig.2-2 The effect map of subparagraph
目前的分段线性算法对时间序列趋势表示都存在着各自的缺陷,对原始序列采用基于累积残差的PLR 算法进行分段,我们可以发现两个问题:
(1)过拟合:对于整个分段,由于累积残差的累积效应,使得线性度较好的一个区间被划分成2段。
(2)欠拟合:由于累积残差对短时段大波动数据的不敏感造成的。
可以知道,如果可以识别基于累积残差法的每个分段的拟合程度,我们就能很容易的通过对这些子序列的处理达到趋势表示所要求的准确刻划趋势拐点这一条件,比纠正平均残差的趋势分界点要容易的多。
因此我们提出用子序列线性度来衡量数据拟合好坏,基于PLR 累积残差方法提出一种改进的分段算法。
2.3子序列线性度
对基于累积残差方法的分段,我们采用子序列线性度作为衡量子序列的拟合程度。
线性度越高,则拟合直线与原始数据越接近。
假设[]:S a b 各个点的拟合误差为[]:E a b =
[]b a a e e e ,...,,1+,而方差表示数据的离散程度,因此我们采用E 的方差作为子序列线性度lm 的度量,线性度越好,lm 值越小。
即
()2
11∑=−+−=b a u u E e a b lm (2-12) 我们将式(2-12)展开变形如下:
()
∑=+−+−=b a
u u u E E e e a b lm 22211 (2-13) ⎟⎠
⎞⎜⎝⎛+−+−=∑∑∑===b a u b a u b a u u u E e E e a b 22211 (2-14) 22211E ME E e a b b a u u −=−+−=∑= (2-15) 式中,E 表示[]:E a b 的平均值。
根据最小二乘法直线回归理论,有E =0,即有=ME lm .而且在基于累积残差的算法中,我们可以在累积残差计算的基础上,方便的实现平均残差的计算。
图2-3是图2-1、图2-2中6个分段直线对应的累积残差和平均残差。
图2-3 累积残差与平均残差对比
Fig.2-3 Comparison between cumulative residual and average residuals
可以发现,和累积残差相比,平均残差都可以很好的表示其产生的每个分段直线拟合的好坏程度。
在实际应用中,平均残差大小和时间序列值的测量度量等因素有很大的关系,要根据该值大小来判断分段直线的拟合程度显然比较困难,因此我们提出相对平均残差概念,用相对平均残差作为各个分段区间直线拟合程度的度量。
假设时间序列S 有K 个分段,平均误差为
{}12,,,K ME me me me ="
则第i 个分段的子序列线性度为
1i
i K j
j K me lm me
=⋅=∑ (2-16) 图2-4是图2-1、图2-2中所示分段的相对平均残差示意图。
由于相对平均残差避免了平均残差的单位量纲,使得识别基于累积残差分段直线的拟合程度变得相对容易。
例如,设定超过1.5作为欠拟合,小于0.5的是过拟合。
从图中可以发现,第五段的相对平均残差达到2.5左右,处于欠拟合状态。
而第三段相对平均残差不到0.5,处于过拟合状态。
图2-4 相对平均残差示意图
Fig.2-4 The map of relatiion to average residual
2.4双误差阀值算法
现有的PLR累积残差算法是逐个合并相邻子序列,由于只采用累积残差作为合并“代价”,并没有考虑合并后子序列平均残差的变化情况,因此会覆盖波动数据的趋势变化。
由于PLR 是逐个合并,因此在实际的分段中肯定是从过拟合到欠拟合的过程,对于相邻有相同趋势的较长子序列,由于合并后的累积残差会比较大,算法会错误的选择相邻有不同趋势的较短子序列进行合并,从而达到“合并代价”最小。
图2-5是PLR累积残差法从12个分段到8个分段的实现过程,依次对应(a)、(b)、(c)、(d)。
(a) 12分段(b) 11分段
(c) 10分段(d) 8分段
图2-5 合并子序列过程
Fif.2-5 The process of mergering Sequences
对应图2-5(a)的12个子序列,从图(a)中可以发现60到75这段最小。
即把两个子序列合并所花的“代价”最小,图2-5(b)45到75中这段最小,将序列合并后得到的新子序列。
对,而这次合并的选择显然是不符合趋势表示要求的。
这是仅仅使用累积残差作为合并代价函数所带来的问题。
因此,我们在现在的PLR累积残差法基础上进行了对应的两个改进:(1)在进行合并前,不单单以累积残差作为判断依据,同时考虑平均残差来衡量合并子序列的线性度,如果合并后的子序列线性度发生大的变换,比如说大于1.5,就不进行合并操作;(2)对存在的划分子序列,采用子序列线性度进行评价,判断是否需要进行合并。
3. 仿真计算
我们分别采用2005—2006广州药业实际股票收盘价一些数据进行PLR累积残差法,PLR平均残差法以及本章方法进行对比计算。
结果如图3-1中(a)、(b)、(c)所示。
(a)累积残差
(b)平均残差
(c)本章方法
图3-1 股票指数分段比较
Fig.3-1 Comparison between subparagraph of stock index
比较图3-1的三种算法结果,图(a)、图(b)中的45-70这段,相对于图(c)中而言,其都将
明显不同趋势分段划分在同一个子序列中。
而图(c)对这段进行了较好的拟合。
这表明本章所用的分段线性方法在拟合的准确度上的确要优于已存在的两种方法。
4.总结与展望
4.1 本文的工作总结
本文主要通过对相似性概念体系的总结和相似性算法的实现与分析,得出以下三方面结论:
(1) 在通过对时间序列相似性研究的度量标准入手,分析了传统的欧氏几何距离和已有的一些对时间序列相似性定义的拓展之后,得出了以下结论:
①欧氏几何距离作为时间序列相似性度量标准有一些不足之处。
虽然在后来的研究中对欧氏几何距离有很多不同的改善办法,但是始终无法消除这些不足造成的影响。
②本文通过构造相似性函数建立了一个形式明确的相似性概念体系,提出了相似性函数和变换函数的概念,给出了它们所应具备性质和特征以及在实际应用中的要求。
在该概念体系中,相似性带有一定的“主观性”,即相似性只能是在某种变换约束下的相似性。
相似性问题,实际上就是寻找合适的变换函数和相似性函数的问题。
而且该概念体系下的定义和以往的研究并没有任何冲突的地方,甚至可以很好的解释和包含过去的一些对相似性的传统定义。
(2) 根据以上提出的相似性概念体系,指出相似性研究方法的主要问题是算法时间复杂度和特征提取问题,并对面向相似性比较的时间序列变换方法和分段方法进行了分析和研究,包括离散傅立叶变换(DFT)、离散小波变换(DWT)、分段累积近似(PAA)、分段线性分割(PLR)、界标模型(Landmark Model)等。
在此基础上总结出研究时间序列相似性问题的两种基本思路:整体正交变换和分段特征提取处理。
(3) 虽然就具体的股票数据而言分段线性方法比变换方法更具优势,但在算法准确度上却有不足,本文对基于PLR的分段算法进行了初步改进,并提出了更为准确的双误差阀值算法,并得到了令人满意的预期结果。
4.2 需要进一步研究的问题
时间序列的相似性研究经过一定阶段的发展,从早期的数学建模到当前的形状描述与约简,存在的难点仍然是相似性定义和算法时间复杂度。
由于相似性含义随着应用领域及查询目标的不同而不同,所以采用何种方法度量相似或不相似(包括距离公式和序列变换的选择)是算法的关键。
当前,新的算法集中在对序列采用诸如降维、变换等一定的技术处理手段,因而我们未来的工作是如何在不影响有效性的基础上,进行时间序列相似性的索引、搜索、比较等,同时追求较小的时间复杂度,提高效率。
参考文献
[1] 毛国君,段丽娟等.数据挖掘原理与算法[M].北京:清华大学出版社,2005.
[2] 何书元.应用时间序列分析[M].北京:北京大学出版社,2005.
[3] 安鸿志,时间序列分析[M].上海:华东师范大学出版社,1992.
[4] Chan K.P,Fu A.W. Efficient time series matching by wavelets[C]. Proceedings of the 15th IEEE International Conference on Data Engineering,1999,126~133.
[5] 张军.基于时间序列相似性的数据挖掘方法研究[D].南京:东南大学,2004.
[6] 王达.时间序列数据挖掘研究与应用[D].浙江:浙江大学,2004.
Study Of Time Series Similarlry
Zhang Lu
College of Science, Liaoning Technical University, Fuxin, Liaoning (123000)
Abstract
As a data form, time series exists broadly in many applications in the databases of business, medicine, engineering natural sciences and social sciences. Through the Overview of Time Series Data Mining, this thesis introduces approaches of study of the time series similarity, notes the Euclidean distance’s deficiencies as metrics of time series similarity Department and presents a uniform conception of time seriess similarity based on various definitions of study of similarity; Moreover, based on stock for time series similarity datas, this paper focus on two modern approachers“DFT”(base on orthogonal transformation).“PAA” (base on Morphology), which is to solve forecasting and the application of the data-processing algorithm complexity . Meanwhile, based on two ideas of the main study for similarity, this paper makes a comprehensive comparison and sums up characteristics of the total of good study methods of similarity; In the case of accuracy of the algorithm, The paper raises the algorithm improvement based on PLR.
Keywords: time teries; similarity; piecewise linear。