sift:dynamic_time_warping:dynamic_time_warping
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
sift:dynamic_time_warping:dynamic_time_warping [2024/06/18 13:26] – sgranger | sift:dynamic_time_warping:dynamic_time_warping [2024/11/15 20:13] (current) – [Dynamic Time Warping] wikisysop | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | Dynamic Time warping is a distance based algorithm that allows you to compare and measure similarity between two time based sequences, by minimizing the Euclidean distance between points. Essentially, | + | ====== |
- | {{DTWAlign.png}} | + | Dynamic Time warping is a distance based algorithm that allows you to compare and measure similarity between two time based sequences, by minimizing the Euclidean distance between points. Essentially, |
- | ===== Contents ===== | + | {{: |
- | + | ==== Mathematics of Dynamic Time Warping ==== | |
- | + | ||
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | + | ||
- | + | ||
- | ===== Mathematics of Dynamic Time Warping | + | |
Say you had a trace x of size N, and a trace y of size M, this is how you would calculate the cost matrix: | Say you had a trace x of size N, and a trace y of size M, this is how you would calculate the cost matrix: | ||
- | {{DTWeq.png}} | + | {{:DTWeq.png}} |
where d() is equal to the absolute distance. | where d() is equal to the absolute distance. | ||
Line 23: | Line 15: | ||
To speed up the computational cost a Lower Bound Keogh algorithm was implemented. | To speed up the computational cost a Lower Bound Keogh algorithm was implemented. | ||
- | ===== Computing Dynamic Time Warping in Sift ===== | + | ==== Computing Dynamic Time Warping in Sift ==== |
In Sift you can use Dynamic Time Warping two different ways for your analyses. | In Sift you can use Dynamic Time Warping two different ways for your analyses. | ||
Line 31: | Line 23: | ||
In this example we have used Dynamic Time Warping to find anomalies within all workspaces of AnkleAngleX. The results have given us a list of the traces identified as anomalies and their corresponding cost function. If we have the group plotted, these traces will also be selected. After a quick visual check we can press the **Exclude Anomalies** button and they will be exclude from the group. | In this example we have used Dynamic Time Warping to find anomalies within all workspaces of AnkleAngleX. The results have given us a list of the traces identified as anomalies and their corresponding cost function. If we have the group plotted, these traces will also be selected. After a quick visual check we can press the **Exclude Anomalies** button and they will be exclude from the group. | ||
- | {{DTWAnomalies.png}} | + | {{:DTWAnomalies.png}} |
\\ | \\ | ||
Line 38: | Line 30: | ||
In this example we found that the trace - AnkleAngleX/ | In this example we found that the trace - AnkleAngleX/ | ||
- | {{DTWTrace.png}} | + | {{:DTWTrace.png}} |
- | ==== Exporting Results | + | === Exporting Results === |
- | Results for each dynamic time warping test can be exported in the {{sift_export_results.png{{/ | + | Results for each dynamic time warping test can be exported in the {{:sift_export_results.png}} [[Sift: |
- | ===== References | + | ==== References ==== |
[1] F. Petitjean, G. Forestier, G. I. Webb, A. E. Nicholson, Y. Chen and E. Keogh, " | [1] F. Petitjean, G. Forestier, G. I. Webb, A. E. Nicholson, Y. Chen and E. Keogh, " |
sift/dynamic_time_warping/dynamic_time_warping.1718717183.txt.gz · Last modified: 2024/06/18 13:26 by sgranger