對於使用DTW算法的stepPattern,我有點困惑。我不得不承認,一個月前,我不知道該算法的存在。如何決定在DTW算法中使用哪個stepPattern
故事開始於特定類型的圖像比較。 正如您在下面看到的,是我選擇從圖像中提取「時間」序列數據的方式。
的想法是讓所有叉距離第一叉,因爲它播種。因此,對於兩個不同的圖像,您有兩個不同的距離值數組。 這個想法的一個關鍵點是這兩個數組的值是相互對應的。
通過的是,我的意思是兩個陣列的所述第一值不同於所述第二左叉到第一主叉(如播種與編號爲1的圖像中的)之間的距離等等...
通過有了這些值,我使用了DTW算法,通過使用R package。
這裏是我想要你的意見的地方。我想這在兩個方面:
A)非對稱
我使用的,因爲我是從什麼瞭解,我讀了你可以使用非對稱stepPattern如果你有相應的值來檢查。爲了與其他圖像的值爲1,與其他圖像的值2第一圖像的值2,依此類推比較第一圖像的價值1 ...
首先我運行這個
dist = dtw(F,K1,keep=TRUE,step.pattern = asymmetric)
,然後我把它改變成
dist = dtw(K1,F,keep=TRUE,step.pattern = asymmetric)
這兩個不同的執行返回我不同的距離值(dist$distance
)。我不喜歡那樣,但正如我理解後者,結果必須預期,因爲該方法只改變了我的價值(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來處理我的案例?
謝謝。
非常感謝。 – 2015-04-08 19:28:36