DynamicTimeWarping/dtw-python
Python port of R's Comprehensive Dynamic Time Warp algorithms package
解決的問題
本套件提供動態時間彎曲(DTW)演算法的完整實作,這些演算法用於透過拉伸或壓縮時間軸,找到兩條時間序列之間的最優對齊。這對於比較速度或時間可能有差異的序列至關重要,適用於經濟計量學、化學計量學以及一般時間序列挖掘中的分類與聚類等任務。
工作原理
該程式庫實作了DTW演算法家族,用於計算查詢序列與參考序列之間的累積距離。支援多種約束與匹配類型:
- 全域約束: 支援任意視窗函數,例如Sakoe-Chiba帶與Itakura平行四邊形,以限制搜尋空間。
- 局部約束: 支援多種轉移類型(步進模式),包括對稱、非對稱以及使用者自訂的斜率約束。
- 部分匹配: 支援不完整時間序列的開頭、開端與子字串匹配。
- 多變量支援: 可透過
scipy.spatial.distance.cdist使用任意局部距離定義來對多變量時間序列進行對齊。
適用對象
在Python中處理時間序列資料的資料科學家、研究人員與分析師,特別是需要R dtw套件的穩健且忠實的Python替代方案者。
主要特色
- 功能完整: 包含多種知名步進模式與Rabiner的平滑變體。
- C核心: 使用快速原生C核心以提升效能。
- 引用資訊: 基於已建立的學術研究,並為特定演算法(如最小變異匹配MVM)提供明確的引用指引。
- 可視化: 包含多種經典風格的對齊與扭曲函數繪圖方法。
相關
- 專案
- 專案
- 專案
- 專案
- 專案