时间序列_第一篇 知识概述(1)

1. 什么是时间序列

时间序列是一系列的观测点按照时间顺序排序的集合。时间序列是无处不在的。

  • 一个人几个月来的血压变化情况
  • 某个明星的欢迎度评分变化趋势
  • 某城市近几年的降雨量
  • 某只股票的变化趋势
    时间序列遍布在医疗、科技、金融等各个邻域

1.1 高维特征转成一维信号

可以将高维形状转化为一维的信号,然后移除信号中的scale和offset(缩放和偏移),再送给我们的算法进行分析。
Alt

  • 如文本类数据,可被看做时间序列进行处理!
    在这里插入图片描述
  • 如视频类数据,也可被看做为时间序列进行处理!【将视频中人物一系列的动作,分解成一个个的时间步骤,分解为:手向下->手抬起皮套位置->手拿出枪->手移动至肩膀高度->稳定射击】
    在这里插入图片描述
    类似地,还有手写体数据、3D模型等数据,也都适合看做时间序列数据进行分析。

1.2 时间序列分析难点

  • 对于大型的时间序列数据数据量巨大且难以分析。因此需要一种时间序列的表示方法,将它们加载到内存中以便与操作与分析
  • 分析带有一定的主观性。对于不同用户、领域、任务来说,相似性的度量标准不尽相同
  • 时间序列自身的繁杂性(不同的数据格式,不同的采样比,噪音和缺失值等问题)

1.3 时间序列可做事情

在这里插入图片描述

2. 相似度及度量方式

相似度很难定义,但是 We know it when we see it.

2.1 不同数据类型,相似度讨论

2.1.1 文本类型的相似
  • 单个词语层面上的相似
    在这里插入图片描述
  • 整体结构层面上的相似
    在这里插入图片描述
2.1.2 时间序列的相似
  • 形状层面上的相似
    在这里插入图片描述
  • 结构层面上的相似
    在这里插入图片描述

2.2 距离度量标准特性

定义:设O1和O2是原始空间中的两个对象。则距离(相异度)定义为D(O1,O2)

  • 对称性 D(A,B)=D(B,A)
  • 恒定性 D(A,A)=0
  • 正值性 D(A,B)=0 IF A=B, 即如果AB不相等,那么距离一定大于0
  • 三角不等性 D(A,B)≤D(A,C)+D(B,C)

2.3 Euclidean Distance(欧式距离 ED)

Alt
如果直接计算两条时间序列的欧式距离,那么很可能得不到非常理想的结果。因为欧式距离对于信息中存在的异常值是非常敏感的。所以在计算之前,一定要先消除这些异常!!!!!

2.3.1 Offset Translation(偏移转换)Alt

可以看到,处理之前,二者的欧式距离非常大,处理之后,红线向下平移,蓝线向上平移,最终二者的欧式距离变得很小。

2.3.2 Amplitude Scaling(振幅缩放)

在这里插入图片描述
这里进行了零均值归一化处理,也称为Z_Score Normalization,这是因为两条时间序列的量纲不同,归一化之后,二者的欧式距离也明显减小。

2.3.3 Linear Trend(线性趋势)

在这里插入图片描述

2.3.4 Noise(噪音)

在这里插入图片描述
使用平滑方法之后,两条时间序列的欧式距离也变小了。

2.3.5 举例及总结
  • 演示数据预处理过程
    在这里插入图片描述
  • 过程总结
    ☆ 原始时间序列数据可能存在失真的问题,因此应该在聚类、分类等分析前将其消除。
    ☆ 有时,失真是数据中最有趣的事情,上述只是一般的规则。
    ☆ 在考虑以后将要遇到的时间序列(DFT,Wavelets等)的高级表示形式时,我们应该牢记这些问题。 由于这些表示形式通常使我们能够以优雅的方式处理失真。

2.4 Dynamic Time Warping(动态时间规整法 DTW)

动态时间规整法是一种衡量两个时间序列之间相似度的方法,它的时间轴可以是扭曲的(warping)。主要应用在语音识别领域来识别两段语音是否表示同一个单词。
在这里插入图片描述

2.4.1 DTW原理

在时间序列中,需要 1. 比较相似性的两段时间序列的长度可能并不相等【在语音识别领域表现为不同人的语速不同。而且同一个单词内的不同音素的发音速度也不同,比如有的人会把“A”这个音拖得很长,或者把“i”发的很短】。2. 不同时间序列可能仅仅存在时间轴上的位移,亦即在还原位移的情况下,两个时间序列是一致的
DTW通过把时间序列进行延伸和缩短,来计算两个时间序列之间的相似性。
在这里插入图片描述
如上图所示,上下两条实线代表两个时间序列,时间序列之间的虚线代表两个时间序列之间的相似的点。
DTW使用所有这些相似点之间的距离的和,称之为归整路径距离(Warp Path Distance)来衡量两个时间序列之间的相似性。

2.4.2 DTW计算
  • 构建一个行数为||Q||,列数为||C||的矩阵,矩阵中的每一个元素值等于两条时间序列中对应点的欧式距离
    在这里插入图片描述
  • 希望能够找到一条,穿过矩阵元素和最小的一条路径。
    在这里插入图片描述
2.4.3 ED与DTW在不同场景下的对比

在这里插入图片描述在这里插入图片描述
☆ 错误率:使用1个最近邻居,一劳永逸!
☆ 计算时间:DTW比欧几里得距离慢两到三个数量级

2.4.4 DTW的改进

DTW法具有的特点:
☆ DTW度量法在绝大多数情况下比欧式距离度量法效果好;
☆ DTW度量法的缺点是计算时间非常长,是欧式距离法的几百倍。
于是我们接下来对其改进,尽量在保证精度的前提下,提升程序的计算速度。
改进一:DTW距离的快速近似(fast approximations)
通过下采样或者压缩算法来表示原始的矩阵,效果如下:
在这里插入图片描述
可以看到下采样之后,DTW仍表现出不错的效果,时间也缩短了很多倍,这个方法在聚类和分类等问题中,经过实验的证实的确有用。
改进二:全局约束

  • 轻微加快计算速度
  • 防止病态的扭曲
    一般有两种全局约束的方式,全局约束体现在:约束规整路径warping path中的元素,下标 i,j 满足 j-r ≤ i ≤ j+r
    在这里插入图片描述
  • 规整窗口的大小与精度的关系变化趋势
    在这里插入图片描述
2.4.5 lowerbounding(下界)

在这里插入图片描述
根据定义,对于所有的时间序列A和B,都有:
lower_bound_distance(A,B)≤DTW(A,B)
Lower_Bounding_Sequential_Scan(Q)算法
主要特点:减少了计算DTW这种耗时操作的次数,仅在LB_dist< best_so_far 的时候才会进行DTW的计算,大多数时候,用不太耗时的lower_bound_distance()进行代替。
在这里插入图片描述

  • Lower Bound of Yi,简称LB_Yi
    由Yi,B,Jagadish等人于Efficient retrieval of similar time sequences under time warping提出:在这里插入图片描述
    灰色线的平方和代表相应点对整个DTW距离的最小贡献,因此可以作为下界返回。
  • Lower Bound of Kim,简称LB_Kim
    由Kim,S,Park等人于An index-based approach for similarity search supporting time warping in large sequence databases提出:
    在这里插入图片描述
    两个序列的第一(A)、最后(D)、最小(B)和最大点(C)之间的平方差作为下界返回。
  • Lower Bound of Keogh,简称LB_Keogh
    在这里插入图片描述

2.5 基于模型或结构层面的相似度

基本思想:抽取时间序列的全局特征,组成一个特征向量,然后计算这些特征向量之间的相似度。核心是两点:features 和 distance measure/ learning argorithm

  • 基于特征的时间序列数据分析
    这里的特征是时间序列的数值特征。如均值、方差、偏度以及它们的一阶导等在这里插入图片描述
  • 识别时间序列:将ARMA模型和基于记忆的学习结合起来
    在这里插入图片描述
  • 基于压缩的不相似性
    在这里插入图片描述

2.6 时间序列相似度总结

  • 如果时间序列较短,在搜寻得到合适的 warping window size之后,使用 DTW 作为相似度度量标准,然后使用基于envelope的下界来加快 DTW 的计算速度;
  • 如果时间序列较长,而且你对数据也了解不多,可以尝试基于压缩的不相似性度量;
  • 如果时间序列较长,但是你对数据有一定的了解,那么可以利用相关知识来手动抽取特征;

2.7 Reference

1.A Decade of Progress in Indexing and Mining Large Time Series Databases
2. https://blog.csdn.net/jh1137921986/article/details/91449339

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值