DTW(Dynamic Time Warping)算法

變量定義

1.warping function

F=c(1),c(2)...c(k)...c(K)

其中c(k)=(i(k),j(k))
表示兩個語音特徵序列A和B之間的映射關係。
2.time-normalized distance
D(A,B)=MinF[Kk=1d(c(k))w(k)Kk=1w(k)]

其中w(k) 用來歸一化不同路徑的K大小不一致的問題,d() 表示兩個特徵向量之間的距離。

warping function的限制條件

這裏寫圖片描述
1.單調性

i(k1)i(k) and j(k1)j(k)

2.連續性
i(k)i(k1)1 and j(k)j(k1)1

由以上兩個條件限制了只能向三個方向移動,向上/向右/向右上,而且每次只能移動一步
3.邊界條件
i(1)=1,j(1)=1 and i(K)=I,j(K)=J

4.窗口限制
|i(k)j(k)|r

加窗爲了將對齊路徑限制在對角線附近。
5.斜率限制
P=n/m

避免在橫軸i方向或縱軸j方向走的太偏,當在一個方向走了m步以後,需要在對角線方向走n步。

權重係數w

有兩種典型的計算方式
1.對稱形式

w(k)=(i(k)i(k1))+(j(k)j(k1))

N=k=1Kw(k)=I+J

2.非對稱形式
w(k)=(i(k)i(k1))

N=k=1Kw(k)=I

在j方向也一樣。
對稱形式的效果更好。

DP求解

假設使用對稱形式的權重係數,不使用斜率限制
- 初始條件

g(1,1)=2d(1,1)

- DP
g(i,j)=min[g(i,j1)+d(i,j) g(i1,j1)+2d(i,j) g(i1,j)+d(i,j)]

其中窗口限制條件jrij+r
- 距離
D(A,B)=1I+Jg(I,J)

算法流程圖如下:
這裏寫圖片描述

Reference

Dynamic Programming Algorithm Optimization for Spoken Word Recognition

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章