动态时间规整(Dynamic Time Warping,DTW)介绍

在时序数据分析中,动态时间规整(Dynamic Time Warping,DTW) 是一种经典的用于度量两个时间序列相似度的算法。它的核心价值在于解决了传统距离度量(如欧氏距离)在处理时间序列时的局限性——尤其是当序列存在时间错位(如节奏快慢不同)或长度差异时,仍能准确捕捉它们的“形状相似性”。

一、为什么需要DTW?

传统的距离度量(如欧氏距离)要求两个时间序列必须长度相同时间点严格对齐。但实际场景中,时间序列往往存在“时间伸缩”或“错位”:

  • 例如,两段语音说的是同一个词,但语速不同(一个快一个慢);
  • 两个传感器记录的“走路”动作,一个人步频快,一个人步频慢,序列长度不同但形状相似。

此时,欧氏距离会因为时间点未对齐而给出“不相似”的错误结论,而DTW通过动态调整序列的时间轴(即“规整”),让形状相似的部分对齐,从而更合理地计算相似度。

二、DTW的核心思想

DTW的本质是:通过构建一个“距离矩阵”,找到一条最优的“对齐路径”,使得路径上的总距离最小。这条路径会允许序列中的元素“一对一”“一对多”或“多对一”匹配,从而抵消时间错位的影响。

三、DTW的计算步骤

假设我们有两个时间序列:

你可能感兴趣的:(机器学习,人工智能,深度学习,数据结构,算法)