动态时间规整(DTW)算法在R.DTW中的综合实现计算两个时间序列点之间的最优(最小累积距离)对齐。常见的DTW变体包括局部(斜率)和全局(窗口)约束、子序列匹配、任意距离定义、规范化、最小方差匹配等。提供累积距离、路线、专用打印样式等。
dtwr的Python项目详细描述
动态时间规整算法的综合实现。 支持任意局部(如对称、不对称、坡度限制)和 全局(窗口)约束、快速本机代码、多种打印样式, 还有更多。
欢迎
这个包提供 动态时间的最完整、免费(gpl)实现 最新的翘曲类型(DTW)算法。它是一个忠实的python等价物 共R’s DTW package。
包在companion paper中描述,包括详细的 多变量等方面的指导和广泛背景知识 匹配,实时使用的开放式变体,在 递归类型和长度规范化、历史记录等。
说明
DTW是计算局部拉伸或 压缩以应用于两个时间序列的时间轴,以便 最佳地将一个(查询)映射到另一个(引用)。DTW输出 两者之间的剩余累积距离,如果需要的话, 映射本身(扭曲函数)。DTW广泛应用于 计量经济学、化学计量学和 通用时间序列挖掘。
dtw中的r实现 提供:
- 任意窗口函数(全局约束),例如 Sakoe-Chiba band 以及Itakura parallelogram;
- 任意过渡类型(也称为阶跃模式、坡度
约束、局部约束或dp递归规则)。这包括
数十种知名类型:
- 按分类的所有阶跃模式 Rabiner-Juang, Sakoe-Chiba, 以及Rabiner-Myers;
- 对称和不对称;
- 拉宾的平滑变体;
- 用户定义的任意坡度约束
- 部分匹配:open begin、open end、substring匹配
- 适当的,模式相关的,标准化(精确的平均距离 步骤)
- 最小方差匹配(mvm)算法(Latecki et al.)
多变量时间序列可以与任意的局部距离对齐 定义,利用{proxy}dist函数。DTW本身成为 具有dist语义的距离函数。
除了计算路线外,该软件包还提供:
- 几种路线和翘曲函数的绘制方法 经典样式(请参见绘图库);
- 步进模式的图形表示;
- 应用翘曲函数的函数,可以是正函数,也可以是反函数;
- 快速本机(C)和解释(R)内核。
文档
学习如何使用软件包的最佳场所 《DTW的背景处理》是该杂志的附属论文Computing and Visualizing Dynamic Time Warping Alignments in R: The dtw Package。 免费提供统计软件。
要了解dtw包如何用于 生物信息学到化学到数据挖掘,看看 citing papers。
预构建文档的链接是 here。
引文
如果使用dtw,请在任何发布报告结果中引用它 用这个软件得到的。请遵循中的说明 citation("dtw"),即引用:
Toni Giorgino (2009). Computing and Visualizing Dynamic Time Warping Alignments in R: The dtw Package. Journal of Statistical Software, 31(7), 1-24, doi:10.18637/jss.v031.i07.
使用部分匹配时(通过 open.begin/open.end选项)和/或规范化策略, 请同时引用:
Paolo Tormene, Toni Giorgino, Silvana Quaglini, Mario Stefanelli (2008). Matching Incomplete Time Series with Dynamic Time Warping: An Algorithm and an Application to Post-Stroke Rehabilitation. Artificial Intelligence in Medicine, 45(1), 11-34. doi:10.1016/j.artmed.2008.11.007
0.1.0(2019-08-22)
- pypi上的第一个版本。