[Java-ML-support] JavaML and Dynamic Time Warping (DTW) confusion
Status: Beta
Brought to you by:
thomasabeel
From: <je...@hi...> - 2013-03-01 23:24:20
|
Hi, I need an implementation of calculating the DTW (dynamic time warping) distance of timeseries patterns in order to compare and classify them. At this time, the patterns are double[] arrays which is no problem since I can make them to timeseries objects. In JavaML I found two implementations of DTW now I'm quite confused. The two variations in JavaML package are: -- DTW.getWarpDistBetween(TimeSeries tsI, TimeSeries tsJ); -- and -- DTWSimilarity dtw = new DTWSimilarity(); dtw.measure(Instance i1, Instance i2); -- I looked into source code and the two functions getWarpDistBetween() and measure() look quite different. In measure() there is a hint that it maps the dtw distance with f(x)= 1 - (x / (1 + x)) to a similarity measure. But when I apply this formula to the output of getWarpDistBetween() it does not provide the same solution. Could you tell me, whats the difference of these two functions apart from comversation to a similarity measure in measure()? And which approach should I choose, if I want a classical dtw distance for two timeseries? Thank you in advance! Best regards, Jens |