簡體   English   中英

如何確定在DTW算法中使用哪個stepPattern

[英]How to decide which stepPattern to use in DTW algorithm

我對使用DTW算法的stepPattern有點困惑。

我不得不承認,一個月前我不知道該算法的存在。

所以故事從特定類型的圖像比較開始。 正如您在下面看到的,我選擇從圖像中提取“時間”系列數據的方式。

在此輸入圖像描述

我們的想法是在播種時將所有叉子的距離調到第一個叉子。 因此,對於兩個不同的圖像,您有兩個不同的距離值數組。 這個想法的關鍵點是這兩個數組的值彼此對應。

通過這個,我的意思是兩個數組的第一個值是從第二個左叉到第一個主叉的距離(如圖中播放的數字1),依此類推......

通過使用這些值,我使用R包來使用DTW算法。

這是我想要你的意見的地方。 我試過兩種方式:

A)不對稱

我用過它,因為據我所知,你可以使用非對稱stepPattern,如果你有相應的值來檢查。 要將第一個圖像的值1與另一個圖像的值1進行比較,將第一個圖像的值2與另一個圖像的值2進行比較,依此類推......

首先,我運行這個

dist = dtw(F,K1,keep=TRUE,step.pattern = asymmetric)

然后我把它改成了那個

dist = dtw(K1,F,keep=TRUE,step.pattern = asymmetric)

這兩個不同的執行給我帶來了不同的距離值( dist$distance )。 我不喜歡這樣,但是我理解后者必須預期結果,因為該方法僅通過i值(x軸)改變(如果我錯了,請糾正我)。

B)Symmetric1

之后我決定以不同的方式運行它

dist = dtw(F,K1,keep=TRUE,step.pattern = symmetric1)

dist = dtw(K1,F,keep=TRUE,step.pattern = symmetric1)

返回相同的距離值( dist$distance )。

如您所知,還有不止那些stepPatterns。 那么基於我應該為我的案例選擇stepPattern?

謝謝。

您最好的選擇可能是symmetric2模式,它具有以下理想特征:

  1. 它是眾所周知的,也是常用的
  2. 它是對稱的,你可以理解的屬性
  3. 它是可規范化的,因此您將能夠比較不同長度的對齊方式。

其他模式將缺少一個或多個上述屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM