2001年《Derivative Dynamic Time Warping》Eamonn J K & Michael J P

文章探讨了经典动态时间规整(DTW)在时间序列比较中的问题,包括对Y轴变异性的过度解释导致的奇点和无法找到自然对齐。提出了改进的DTW算法(DDTW),通过考虑序列的一阶导数来解决这些问题,增强了对形状特征的敏感性。实验表明,DDTW减少了不必要的扭曲,提高了对序列局部差异的处理能力。
摘要由CSDN通过智能技术生成

目录

Introduction

DTW 的用途

DTW 的问题

改进 DTW 以解决上述问题

原始 DTW 算法 

改进DTW:DDTW

DTW 的缺陷 / DDTW 所解决的问题

算法细节

实验结果

Spurious warping

Finding the correct warping

总结


Introduction

DTW 的用途

        时间序列的一种常见应用是比较两个序列的相似性。在有些领域,很简单的距离度量(比如 欧氏距离)就可以满足需求。但是,经常出现的问题是:两个序列的总体形状相似,但它们在 x 轴上没有对齐。Figure 1 就是一个简单的例子。

       为了找到上述情况的序列之间的相似性,必须 “扭曲” 一个(或两个)个序列的时间轴,以获得两个序列之间更好的匹配。DTW 就是实现这种扭曲的一个有效手段。

DTW 的问题

1、singularity

       DTW 可能会通过扭曲 X 轴来解释 Y 轴的变异性(the algorithm may try to explain variability in the Y-axis by warping the X-axis)。这可能会产生一些不直观的对齐方式:某个序列中的一个点 和 另一个序列中的很多点 相关联。本文将出现此现象的样本称为 “singularity”。

       许多尝试解决该问题的方法,本质上是在限制 warping 的范围,这会导致它们可能无法找到一些 “正确” 的 warping。

        在模拟情况下,可以通过 扭曲某个时间序列并尝试恢复原始序列 来找到 正确的 warping。在自然情况下,“正确” 的 warping 表示 直观上明显的 “特征到特征” 的对齐。

2、fail to find obvious, natural alignments

        DTW 可能会因为 一个序列中的某个特征 比 另一个序列中的对应特征 稍微高/低了一点,从而找不到两个序列之间明显的、自然的匹配。特征 包括 峰值(peak)、谷值(valley)、拐点(inflection point)、高原(plateau) 等。Figure 2 展示了这个问题。

改进 DTW 以解决上述问题

 

The classic dynamic time warping algorithm 

 

总结之前的改进方法:Constraining the classic DTW algorithm

1) Windowing

Berndt, D. & Clifford, J. (1994) Using dynamic time warping to find patterns in time series. AAAI-94 Workshop on Knowledge Discovery in Databases (KDD-94), Seattle, Washington.

        将矩阵中可用的元素限制在一个 warping window 中:| i - ( n / ( m/j )) | < R。R 是一个正整数,表示 warping width。这其实是修剪了矩阵的角,如 Figure 3 中的虚线所示。

        有许多研究实验了不同形状的 warping window。

Rabiner, L., Rosenberg, A. & Levinson, S. (1978). Considerations in dynamic time warping algorithms for discrete word recognition. IEEE Trans. Acoustics, Speech, and Signal Proc., Vol. ASSP-26, 575-582.

Tappert, C. & Das, S. (1978). Memory and time improvements in a dynamic programming algorithm for matching speech patterns. IEEE Trans. Acoustics, Speech, and Signal Proc., Vol. ASSP-26, 583-586.

Myers, C., Rabiner, L & Roseneberg, A. (1980). Performance tradeoffs in dynamic time warping algorithms for isolated word recognition. IEEE Trans. Acoustics, Speech, and Signal Proc., Vol. ASSP-28, 623-635.

         这种方法限制了 singularity 最大的大小,但并没有防止 singularity 的出现

2) Slope Weighting

Kruskall, J. B. & Liberman, M. (1983). The symmetric time warping algorithm: From continuous to discrete. In Time Warps, String Edits and Macromolecules: The Theory and Practice of String Comparison. Addison-Wesley.

Sakoe, H. & Chiba, S. (1978) Dynamic programming algorithm optimization for spoken word recognition. IEEE Trans. Acoustics, Speech, and Signal Proc., Vol. ASSP-26, 43- 49.

         将等式(5) 替换为 。其中,X 是一个正实数。通过改变 X 值来限制 warping。X 越大,warping path 越接近于 对角线

3) Step Patterns (Slope constraints)

Itakura, F. (1975). Minimum prediction residual principle applied to speech recognition. IEEE Trans. Acoustics, Speech, and Signal Proc., Vol. ASSP-23, 52-72.

Myers, C., Rabiner, L & Roseneberg, A. (1980). Performance tradeoffs in dynamic time warping algorithms for isolated word recognition. IEEE Trans. Acoustics, Speech, and Signal Proc., Vol. ASSP-28, 623-635

       将等式(5) 可视化为一个可行路径图(a diagram of admissible step-patterns),如 Figure 4.A 所示。箭头 表示 在每个阶段,warping path 可以行进的路径。

         将等式(5) 替换为,其可行路径图就变成 Figure 4.B。此外,还有许多种 可行路径,详见下面这篇综述。

 Rabiner, L. & Juang, B. (1993). Fundamentals of speech recognition. Englewood Cliffs, N.J, Prentice Hall.

       上述 3 类方法是以有可能错过正确的 warping 为代价,减轻 singularity 的问题。此外,参数的选择也是一大难题(R for Windowing、X for Slope Weighting、Step-Pattern)。

Derivative dynamic time warping

DTW 的缺陷 / DDTW 所解决的问题

       一些影响整个序列的全局差异比较容易去除。比如:different means (offset translation)、 different scalings (amplitude scaling)、linear trends。

Keogh, E., & Pazzani, M. (1998). An enhanced representation of time series which allows fast and accurate classification, clustering and relevance feedback. Proceedings of the 4rd International Conference of Knowledge Discovery and Data Mining. pp 239-241, AAAI Press.

Agrawal, R., Lin, K. I., Sawhney, H. S., & Shim, K. (1995). Fast similarity search in the presence of noise, scaling, and translation in times-series databases. In VLDB, September.

        当两个序列在 Y 轴上有局部差别(在 X 轴上存在局部加速/减速)时,DTW 可能会出错。例如 Figure 5:两个序列相同的序列,DTW 可以很清楚地得到一个一对一的匹配;如果稍微改变一个局部特征(波谷的深度),DTW 就会倾向于通过时间轴来解释这种差异,于是产生两个 singularities。

       DTW 的缺点在于其考虑的特征,它只考虑了数据点的 Y 值。比如,两个值相同的数据点处于一个上升趋势,而处于一个下降趋势。DTW 认为,由于这两个数据点值相等,这两个点之间的映射是理想的。但在直觉上,我们并不希望将一个上升趋势和一个下降趋势匹配

算法细节

        为了避免这个问题,我们提出了一种 DTW 的改进版。该方法并不考虑数据点的 Y值,而是考虑更高级的 “形状” 特征。本方法通过序列的一次导数获取形状信息。

        假设待比较的两个序列,长度分别为 n 和 m。

        首先,构建一个 n×m 矩阵,矩阵的元素表示 点 之间的距离。在 DTW 中该距离是欧氏距离。而在 DDTW 中,该距离是  点 处导数之差的平方。有许多方法可以估测导数,尤其当已知生成数据的基础模型的一些信息时。考虑到简单性和通用性,本文使用下式估测导数:

        该导数 即:穿过该点和它左边邻点的直线的斜率 和 穿过该点左右邻点的直线的斜率 的均值。从经验上讲,如果只考虑待测点之外的两个点,这种导数估测方法的鲁棒性最强。

       注意:① 上述公式并不包括序列的第一个和最后一个点。我们分别使用第二个和倒数第二个点来代替。② 对于含噪声的数据集,在估测导数之前,先进行 exponential smoothing。

 Mills, T., C. (1990). Time Series Techniques for Economists, Cambridge University Press

         DDTW 的时间复杂度为 O(mn),与 DTW 相同。估测导数的环节会增加一些常数因子。DTW 的必要步骤 offset translation,也可以在 DDTW 中保留。

         为 DTW 开发的一些优化方法(Myers, C 等,1980),对 DDTW 同样适用。

Myers, C., Rabiner, L & Roseneberg, A. (1980). Performance tradeoffs in dynamic time warping algorithms for isolated word recognition. IEEE Trans. Acoustics, Speech, and Signal Proc., Vol. ASSP-28, 623-635

Experimental results

Spurious warping

测试数据集:标准化(均值 0,标准差 1)

        the amount of warping:W = (K-m)/m,0≤ W < 1。K 是 warping path 的长度,max(m,n) ≤ K < m+n-1。由于此处 m = n,m ≤ K < 2m-1。

       W 越大(最大为 1),表示算法认为两个序列之间的 warping 越多;W 为 0,表示算法认为两个序列之间没有差异。

        结果显示:DTW 可能会疯狂扭曲 X 轴来纠正 Y 轴上的一点小差异。而 DDTW 则不太会 “发现” 不存在的 warping。

Finding the correct warping

         取一个序列 Q,拷贝出 Q',往 Q' 中随机插入一些小扭曲。然后将 Q 和 微小扭曲后的 Q' 作为算法输入,比较算法的结果。

         小扭曲的制造方法:首先,选取一个锚点,以其为中心,在 Y 轴上 加上/减去 一个 Gaussian bump。选取了 3 种 bump 高度:0.0(没有 bump)、0.1、0.2。然后,随机向左或向右改变锚点的位置 15 次,其他数据点也相应改变。最后,把扭曲后的序列放回 原始 X 轴上。

         经过上述处理,正确 alignment 实际上是已知的。将正确alignment 标记为双箭头,算法返回的alignment 标记为单箭头

         misalignment M:正确alignment 和 算法返回的alignment 之间的差异。

Conclusions and future work

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值