基于特征的时间序列聚类方法研究进展_时间序列论文

基于特征的时间序列聚类方法研究进展,本文主要内容关键词为:研究进展论文,序列论文,特征论文,时间论文,方法论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。

修订日期:2012-03

1 引言

随着传感器数量的不断增长以及遥感(RS)、地理信息系统(GIS)、全球定位系统(GPS)的广泛使用,地学研究邻域产生了大量的观测数据。这些数据不再局限于传统的静态空间中,而是逐渐向时间维扩展,形成了时间序列数据[1]。时间序列中蕴藏着不同的模式,而不同的模式反映了不同的序列成因。因此,针对序列模式进行聚类,将其分为不同的类别成为我们认识序列数据,进而理解序列形成本质的重要手段。由此看来,针对时间序列数据的聚类方法研究具有非常重要的意义。

与传统的点数据聚类方法相比,针对时间序列的聚类具有一定复杂性。首先,时间序列数据具有高维性,在这巨大的维数中往往只有一小部分维度是与表现对象变化特征的簇结构密切相关的,而其他不相关或者相关性很小的维度会产生大量的噪声,从而掩盖了真实的簇结构[2]。其次,由于维度较高,数据稀疏,维度之间也很可能会有相关性[3],传统的相似性度量方法难以发现真实的结果[4]。第三,时间序列相似性的定义多种多样,基于观测值的相似性度量只能发现表面的变化,没有体现事物的内在机制。两条序列即使观测值相差很小,也不代表序列就很相似(图1a);同样,观测值完全不同,两条序列也有可能在某方面具有相似之处(图1b)。

目前,一些学者提出了许多方法来解决不同类型的时间序列聚类问题。这些方法大致可分为两种:①对现有的静态数据聚类方法进行改进使其能处理时间序列数据;②将时间序列数据转换为静态数据的形式,然后直接用静态数据聚类方法来进行聚类[5]。按照这个思路,时间序列聚类方法可分为基于原始测度数据的时间序列聚类和基于特征的时间序列聚类。基于原始测度数据的时间序列聚类,直接根据原始数据定义相似度,如欧氏距离,相关系数,DTW距离等,然后进行聚类。Liao总结了用于时间序列聚类的各种相似性度量方法[5];Díaz根据相似性度量的定义中是否需要估计模型参数,将时间序列聚类方法分为有参数的聚类方法和无参数的聚类方法[6]。这些方法在现实生活中都有广泛的应用。然而,采用基于原始测度数据的时间序列聚类方法,不可避免地要面对高维数据的问题;此外,基于原始数据仅能发现序列表面的相似性,没有触及序列本身的内在机制,聚类结果有很大的局限性。基于特征的时间序列聚类方法,先对原始数据进行降维,抽取表征其内在变化机制的特征作为相似性度量的基础,然后运用各种聚类方法对这些特征进行聚类,不仅减少了计算量,解决了时间序列高维数据问题,而且还可以处理有数据缺失、不等长或采样不均匀的时间序列;最重要的是,基于特征的时间序列可以根据不同的应用问题选取合适的特征,从而发现时间序列内在机制中不同方面的相似性。

本文根据时间序列的不同特征,系统综述了基于特征的时间序列聚类方法的研究进展。首先介绍了时间序列的定义,概念以及各类特征;然后对基于特征的时间序列聚类方法进行了分析和评述;最后讨论了现有方法的问题和挑战,并对未来时间序列聚类方法研究进行了展望。

2 时间序列数据及特征

时间序列也称为动态序列,由一组随时间变化的观测量组成。与传统静态数据不同,时间序列是一类复杂的数据对象,描述了事物变化过程。

2.1 时间序列类型

时间序列有很多种。根据数据类型不同,可以分为数值型时间序列和类别型时间序列;根据采样时间不同可以分为均匀采样时间序列和非均匀采样时间序列;根据观测值维度不同可以分为单维时间序列和多维时间序列;根据统计特征不同可以分为平稳型时间序列和非平稳型时间序列。不同的时间序列具有的特征也不同,本文主要针对数值型时间序列,如果没有特殊说明,下文中出现的“时间序列”均指数值型时间序列。

2.2 时间序列特征

通常时间序列具有多个特征,每个特征刻画了时间序列的一个方面。从对时间序列不同层次上的认知可将时间序列特征分为3种:形态特征、结构特征以及模型特征。这种分类体现了人们对时间序列认识逐步深化的过程。

2.2.1 形态特征

时间序列的形态特征主要指时间序列的形状变化特征,包括全局特征和局部特征。全局特征描述了时间序列的起伏变化,如上升、下降、头肩模式(图2)等;局部特征则表现为时间序列局部时间点上的异常观测值,如不连续点,极值点、突变点、转折点等。在时间序列最开始的研究中,人们通常是先将时间序列画出来,然后直观地通过观察来研究时间序列的起伏变化或异常点。这类反映时间序列整体变化或局部异常,可以直观看出的特征,称为时间序列的形态特征。基于形态特征的时间序列聚类,可以发现具有相同形状的时间序列簇,寻求时间序列的起伏变化规律。

图1 观测值与相似性的关系

Fig.1 Relationship between observations and similarity of time series

注:a.A,B,C三条序列,计算基于标准化后观测值的欧氏距离,d(A,B)<<d(A,C);但是直观上看,A和C两条序列显然更相似;b.序列的观测值之间难以看出关系,两两之间距离大体相等,但这些序列来自相同的创建机制:黑色序列来自系数为0.55,噪声方差为4的AR(1)模型,灰色序列来自系数为0.35,噪声方差为6的AR(1)模型。

时间序列形态特征可以在一定程度上表现时间序列的特性,通常适用于描述短时间序列[4]。当序列较长时,起伏变化往往比较复杂,难以用简单的“上升,下降”描述。虽然可以采用分段描述的方法[7-8],但这割裂了时间序列的整体性,不能很好地反映时间序列的全局特征;异常点特征主要描述时间序列上的某些特殊点的特征,同样难以反映其全局特征。

图2 时间序列形态特征

Fig.2

Shaped characteristics of time series

2.2.2 结构特征

时间序列的结构特征是对时间序列全局构造或内在变化机制的描述,它可以很好的表现时间序列全局特点。时间序列的结构特征一般难以直观地看出,需要对原始数据进行统计或者转换得出。

时间序列结构特征通常包括以下3类:基本统计特征、时域特征和频域特征。

(1)基本统计特征

基本统计特征是描述时间序列全局结构的一些统计量,它不是时间序列特有的特征,而是可用于描述任何一组数据的特征,包括均值、方差、偏度、峰度等(表1)。

均值和方差是用来描述数据的中心及其偏差的。偏度是表征概率分布密度曲线相对于均值不对称程度的特征指数,直观看就是函数曲线尾部的相对长度;峰度,则是表征概率密度分布曲线在平均值处峰值高低的特征指数,直观上反映了函数曲线尾部的厚度。

(2)时间序列时域特征

时间序列时域特征是时间序列在时间域上表现出的全局结构特征,它反映了时间序列随时间变化的规律。时间序列时域特征包括:趋势、季节波动、时间序列的自相关、混沌等(表2)。

趋势是描述时间序列长期变化情况;季节性反映了时间序列周期内的波动情况;自相关性是时间序列特有的性质,表现为时间序列的观测值依赖于之前观测值的情况;混沌则表示时间序列受其初值影响的敏感程度。

(3)时间序列频域特征

时间序列频域特征是时间序列在频率域上表现出的结构特征,它描述了时间序列的组成成分。一条时间序列可以看成由多个不同频率的振荡序列叠加而成[1]。时间序列频域特征主要包括周期解析强度和谱密度。

2.2.3 模型特征

时间序列模型特征描述了事物变化潜在的运动规律。人们通过对大量时间序列的研究,基于某种假设推理,总结出的表达事物变化规律的抽象数学公式就是时间序列模型。模型特征一般表现为不同的参数特征,不同的时间序列是具有不同参数的模型表达。描述时间序列的模型多种多样,通常是将时间序列看成是一个随机过程,用不同的随机过程去模拟时间序列。这些模型包括:高斯过程模型、ARMA(自回归滑动平均模型)以及ARIMA模型(差分自回归移动平均模型)、马尔科夫链模型、隐马尔科夫模型等。

(4)隐马尔科夫模型:由初始状态概率向量π,状态转移概率矩阵A和观察值概率矩阵B组成。表示无法直接观察到马尔科夫链的状态序列,但是可以观察到其输出序列,是一个双重随机过程,其模型特征表现为O(π,A,B)。

上述这些模型都体现了不同的时间序列特征,在时间序列聚类方法中广泛使用。

3 基于特征的时间序列聚类方法

聚类分析根据对象之间的相似性,将其分成不同的组,其中组内对象之间距离最小,而组间对象之间距离最大。传统的静态数据聚类方法分为5类:基于划分的聚类、基于层次的聚类[12-13]、基于密度的聚类[14]、基于格网的聚类[15]以及基于模型的聚类[2,16]。

基于特征的时间序列聚类,在传统静态聚类方法的基础上引入了时间序列特征的相似性。通过不同的特征来研究时间序列的内在变化机制,从而发现其相似规律。依据聚类问题所针对的不同特征,可以将时间序列聚类分为3类:基于形态特征的时间序列聚类、基于结构特征的时间序列聚类、基于模型特征的时间序列聚类。

3.1 基于形态特征的时间序列聚类

基于形态特征的时间序列聚类可以揭示时间序列中相似的起伏变化或其异常点。前者表明序列整体趋势变化相似,后者则是序列局部相似的体现。基于这点考虑,可将基于形态特征的时间序列聚类分为全局形态特征聚类和局部形态特征聚类。

3.1.1 基于全局形态特征的时间序列聚类

基于全局形态特征的时间序列聚类方法适用于处理短时间序列,如基因谱聚类[4],发现序列的整体相似性。采用原始时间序列的欧氏距离或Pearson相关系数距离可以从一定程度上反映全局形态特征[3],但无法发现具有尺度拉伸、位移,强度拉伸、位移的相似形态特征(图3a)。此外欧氏距离和Pearson相关系数对噪声相当敏感(图3b),难以处理不等长、非均匀采样或有数据缺失的时间序列。

图3受拉伸、位移或噪声影响的相似形态特征

Fig.3 Similar shaped characteristics affected by noise,shifts and scales

注:a具有尺度拉伸、位移的相似形态特征;b.相似序列受噪声影响,Pearson相关系数仅0.3,Spearman相关系数为0.93。

DTW距离[17]放宽了全局形态特征相似性在尺度上的限制,可以处理不等长的时间序列。它在一定程度上克服了尺度位移的问题,但依然无法发现具有强度拉伸或位移的相似形态特征,此外该方法的计算量往往比较大,不适合长时间序列聚类问题。针对噪声问题,Balasubramaniyan提出Spearman相关系数作为基因谱序列的相似性度量[4],采用观测值大小的排名来描述时间序列全局形态特征,而忽略序列观测值取值本身。Spearman相关系数的计算如下式:

Mller-Levet等定义了短时间序列距离来描述短时间序列全局形态特征的相似性[18-19]。每条时间序列的形态特征用一组分段斜率代替,这样可以减弱拉伸或位移所带来的影响。该方法也可以处理非均匀采样的时间序列数据,但要求数据是等长的。下式是该方法的距离度量:

长时间序列由于维数很高,其全局形态特征的描述容易受维度之间的相关性及噪声的影响。对此,Fu等对长时间序列进行了简化,采用序列的PIP点(Perceptual Important Point)来表征其全局形态特征,并进行聚类[20]。这种方法很好地克服了噪声问题,可以发现表征大尺度变化的相似形态特征。序列的简化过程采用道格拉斯压缩算法,大大提高了聚类算法的效率。

3.1.2 基于局部形态特征的时间序列聚类

局部形态特征可以体现时间序列局部的异常值。针对序列的局部形态特征,Keogh等提出了分段线性分割的方法,将原始序列分为多个子序列,通过各个子序列的相似性来度量时间序列的整体相似性[7]。每段子序列采用5个参数来表示:A≡{AXL,AYL,AXR,AYR,AW},分别表示线段的左点x坐标,左点y坐标,右点x坐标,右点y坐标以及该段线段权重,采用分段加权距离计算序列之间的相似度。Chen等采用与Keogh等类似的方法,也对时间序列进行了分段处理。它认为一条时间序列由一组局部模式组成[8],每个模式可以用5个参数表示:,分别表示局部模式在原始时间序列中的起始位置,平均振幅,形状参数,时间尺度和振幅尺度。随后他定义了局部模式的综合相似度——SpADe距离。实验证明采用SpADe距离聚类可以很好地解决拉伸和位移问题,其结果精度比欧氏距离,DTW距离以及EDR距离都要高。

小波变换具有多尺度效应,基于这点考虑,Hsu对原始序列进行小波处理,采用多尺度的小波系数表征原始序列的特征,既要突出全局整体特征,又表现局部序列特征。聚类结果表明采用小波系数聚类可以很好的发现降水时间序列局部奇异值和锐转变点的相似特征以及整体周期变化的特征[21]。

表3给出了基于形态特征时间序列聚类方法中各种相似性度量的特点。该方法适用于短时间序列聚类问题,多用于基因序列聚类问题以及一些轨迹聚类问题[22]。当处理长时间序列聚类问题时,往往需要进行特殊处理,对序列本身形式有要求,有一定的局限性。

3.2 基于结构特征的时间序列聚类

基于形态特征的时间序列聚类停留在序列表面形状的相似上,没有考虑其内部结构的相似性。这类方法适用于短时间序列聚类,对于长时间序列往往有一定的局限性。基于结构特征的时间序列聚类能够揭示时间序列潜在的相似变化机制和结构,从而发现更有意义的聚类结果。根据聚类结构特征的不同可以分为基于统计特征的时间序列聚类、基于时域特征的时间序列聚类、基于频域特征的时间序列聚类(表4)。

3.2.1 基于统计特征的时间序列聚类

基于统计结构特征的时间序列聚类采用描述一般序列的基本统计量作为时间序列特征来进行聚类。

Nanopoulos等最早提出了一种基于统计结构特征的时间序列聚类方法[23],它选取了时间序列的均值、标准差、偏度、峰度4个基本统计量表征时间序列的结构特征,偏度和峰度包含观测值分布的形状信息。分别计算了原始序列及其一阶差分序列的均值、标准差、偏度和峰度值,采用神经网络的方法对这些特征进行了聚类。实验表明,基于这些统计特征的时间序列聚类在一定程度上克服了噪声问题,并大大提高了计算效率。Ouyang选取了时间序列的最大值、最小值、均值以及标准差作为时间序列的结构特征,对塔里木河流域的单一水文站点不同月份的流量序列进行了聚类,从而发现了该地区的不同水文流量时期[24]。

3.2.2 基于时域特征的时间序列聚类

基于时域特征的时间序列聚类采用时间序列在时域上特有的一些全局结构特征,如:趋势、周期、自相关等,进行聚类。

Kontaki等[25]和Kumar等[26]考虑用时间序列的趋势结构特征和季节性结构特征进行了聚类。前者采用分段线性概化的方法,定义了DPLA距离表示为分段趋势距离之和,作为相似性度量;后者在考虑季节性相似度量时,不仅计算了季节特征波动部分,而且还考虑其误差,采用两个季节模式具有相同均值的零假设的显著性作为季节性相似的度量。该方法用来对零售商品数据的季节性模式进行聚类,发现了零售商品中具有相似均值分布的季节模式。Wang等在上述两人的基础上又加入了一部分时间序列特有的特征,包括周期、自相关性、非线性以及混沌性等共9个特征,采用层次聚类方法和SOM方法,对其进行时间序列聚类[9]。实验结果表明,用9个特征代表原始数据进行时间序列聚类,不仅可以提高计算效率,而且可以得到更高精度的聚类结果。此外通过特征选取步骤,可以发现不同意义的聚类结果,Wang等将此方法用在对人类行为的聚类研究上[27]。

3.2.3 基于频域特征的时间序列聚类

随后,更多时间序列特有的结构特征被引入时间序列聚类,以发现其不同方面的内在变化机制。基于频域特征的时间序列聚类可以发现具有相似周期或谱密度等频域特征的时间序列。

Caiado等提出用周期解析强度作为时间序列的结构特征[28],定义了标准化周期解析强度的对数距离作为时间序列的相似性度量。实验表明基于该特征聚类可以区分具有不同ARMA或ARIMA模型的时间序列。Shumway等则对多维时间序列的谱密度特征进行聚类[29-30],其相似性度量采用了谱矩阵的两种拟距离:Kullback-Liebler信息散度与Chernoff对称信息散度。基于该相似性度量,文中采用层次聚类的方法将地震时间序列和爆炸的时间序列数据进行了分组。

3.2.4 基于其他结构特征的时间序列聚类

时间序列的结构特征多种多样,基于不同的特征可以发现不同方面的序列机制。Alonso等先对时间序列进行预测,采用时间序列在未来时段预测值的概率密度分布作为时间序列的特征,然后对其进行聚类[31]。两条序列的距离度量采用了各自概率密度函数差的积分。Singhal等对多维时间序列聚类,采用多维时间序列的主成分以及其各维数据的质量精度来进行聚类[32]。文中定义3个基础距离度量,分别表示为主成分的夹角、多维数据集的马氏距离以及数据质量精度差异,最终多维时间序列的距离采用3个基础距离的加权和。

Díaz等考虑对时间序列的多种特征聚类[6],这些特征包括时间序列的自相关函数,部分相关函数,周期解析强度,谱密度等。文中对比了基于不同特征的相似性度量,将其分为了有参数和非参数的聚类方法。有参数的方法先对时间序列的模型参数进行估计,然后基于这些参数计算时间序列的相似度;非参数的方法则采用统计检验,将两条序列来自同一参数模型作为零假设,检验其显著性,作为时间序列之间的相似性度量。实验证明,选择这些时间序列结构特征聚类,可以解决3种时间序列的聚类问题,包括平稳与非平稳时间序列区分,不同ARMA过程的时间序列区分以及一些非平稳时间序列之间的区分。

基于结构特征的时间序列聚类可对原始时间序列降维,找出具有相同结构特征的时间序列,从而发现其潜在机制的相似性。同时它很好地解决了噪声问题,并可以处理不等长以及非均匀采样的时间序列数据。但由于结构特征种类繁多,具体选择哪种特征聚类往往与实际问题密切相关,因此还需对如何选取合适的结构特征作进一步的研究[9]。

3.3 基于模型特征的时间序列聚类

基于模型特征的时间序列聚类,假设不同簇的时间序列是由具有不同参数的模型创建而来的,而具有相同模型特征的时间序列就认为是相似的。给定一组时间序列,聚类问题就是找出具有代表性的参数模型,根据该模型特征将时间序列分配到相应的组中。这种聚类方法往往更能反映时间序列的自然特性,产生有意义的结果。

基于模型特征的时间序列聚类方法可以分为两种:基于模型参数特征的时间序列聚类和基于混合模型的时间序列聚类(表5)。基于模型参数特征的聚类对时间序列建立模型,然后将该模型的参数或者拟合的残差作为时间序列的模型特征,以此定义合适的相似性度量进行聚类;基于混合模型的时间序列聚类将时间序列看成由多个模型组件组成的混合模型,计算模型各组件的后验概率或对数似然,根据最大后验概率或最大似然的原则对混合模型各组件中的模型参数进行估计,从而确定时间序列各簇对应的模型。

3.3.1 基于参数特征的时间序列聚类

基于参数特征的聚类方法,与之前基于形态特征和基于结构特征的聚类方法思路大体相同,主要还是建立模型,用模型参数定义序列之间的相似性度量。Maharaj[35]针对平稳型时间序列建立了自回归模型(AR),对自回归系数π进行估计。采用零假设:的显著性作为两个时间序列的相似性度量,聚类结果可以发现具有相同自回归模型的时间序列。随后Maharaj将该方法扩展到多维时间序列聚类上,建立了向量自回归滑动平均模型VARMA[36],同样采用零假设:的显著性作为两条序列的相似性度量。Ramoni则对时间序列建立马尔科夫链模型[37],将每条时间序列看成是一个马尔科夫链,估计其概率转移矩阵,然后定义了转移矩阵的Kullback-Liebler距离,作为序列之间相似性度量。通过层次聚类法,结合最大后验概率的原则对时间序列进行聚类。Ramoni等也将该种方法扩展到了多维时间序列聚类上[38]。

3.3.2 基于混合模型的时间序列聚类

基于混合模型的时间序列聚类核心问题在于对模型参数的估计,参数估计过程中,初始值的选取也往往对聚类结果有一定的影响。目前有很多种参数估计的方法:Xiong等随机选择初始值,采用EM算法对ARMA模型的混合模型参数进行了估计[39],应用于人口数据,气温数据的聚类等。Bicego等则建立隐马尔科夫模型,先选择R条时间序列作为“参考”时间序列[40],然后通过Baum-Welch算法以及前向后项算法[41]对参数进行估计,其方法优于标准的隐马尔科夫链聚类方法,但还是存在隐马尔科夫链隐状态数未知的问题。Oates等则针对此问题,采用DTW距离先对原时间序列进行聚类找出初始划分,从而推断出隐状态数的初始值,然后通过迭代计算找出最优的隐马尔科夫模型[42],但是他并没有对聚类簇数的选择问题进行探讨。Li等则依据最大后验概率的原则,对隐马尔科夫混合模型4个层次的参数特征进行估计[43]——包括聚类簇数,划分的结构,隐马尔科夫模型的结构和隐马尔科夫模型的参数,从而对时间序列进行聚类。随后,Li等在该方法基础上加入了BIC准则,用来更准确的选择聚类簇数和隐马尔科夫模型结构[44]。

与基于结构特征的时间序列聚类类似,基于模型特征的聚类对噪声不敏感,可以处理不等长或非均匀采样的数据。更重要的是它可以发现序列中具有相同潜在运动规律的过程,更接近时间序列的自然本质,发现事物的动态变化规律。

4 结语与展望

本文系统综述了基于特征的时间序列聚类方法,将其分为基于形态特征的聚类、基于结构特征的聚类和基于模型特征的聚类。根据形态特征的全局性和局部性,可以分为基于全局形态特征的聚类和基于局部形态特征的聚类;根据结构特征的不同来源,可以分为基于统计特征的聚类、基于时域特征的聚类和基于频域特征的聚类;根据模型特征的不同原理,可以分为基于参数特征的聚类和基于混合模型特征的聚类。这样的分类可以让我们在研究中清楚地认识到时间序列不同层次上蕴藏着的模式特征,从不同的角度反映时间序列的成因,加深对时间序列本质的理解。

目前,国际上关于时间序列聚类的方法已经成为热点研究领域,取得一定的研究进展。然而,时间序列聚类方法仍面临许多困难与挑战,其热点和难点问题主要包括以下4个:

(1)如何结合实际应用问题,充分利用先验知识,选择适当的时间序列聚类方法,使聚类算法更容易产生好的聚类结果[45]。目前一些学者提出了许多时间序列聚类方法,然而没有哪一种可以说是最好的,使用不同方法产生结果的好坏往往取决于实际应用问题,而少量的先验知识往往比复杂的聚类算法更容易产生有意义的聚类结果。因此如何根据实际问题,结合先验知识,选择最优时间序列聚类方法是有待于进一步研究的问题[45-46]。

(2)建立时间序列聚类的基准测试数据[33]。许多时间序列聚类方法有所缺陷,但由于实验数据本身有一定的特殊性,导致该时间序列聚类算法在实验中效果很好,而在解决实际问题时却得出很糟糕的结果。因此需要建立基准测试数据集,保证时间序列聚类方法的有效性。

(3)对算法中参数的选择或估计问题[37,47]。目前许多聚类算法都需要预先设定参数,如聚类簇数,最小距离阈值等,如何根据实际问题合理的设定或估计这些参数,使聚类结果更好,也是热点研究问题之一[48]。

(4)提高算法的效率。海量时间序列数据不断地产生,随着处理的数据量越来越大,时间序列聚类方法也要提高计算效率。

本文引用格式:

宋辞,裴韬.基于特征的时间序列聚类方法研究进展.地理科学进展,2012,31(10):1307-1317.

标签:;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  

基于特征的时间序列聚类方法研究进展_时间序列论文
下载Doc文档

猜你喜欢