如何解决如何在 python 中的 3 个或更多信号之间应用/实现动态时间扭曲 (DTW) 或快速动态时间扭曲 (FastDTW)?
在时间序列分析中,动态时间扭曲(DTW)是衡量两个时间序列之间相似性的算法之一,这两个时间序列的速度可能不同。 Fast DTW 是一种更快的方法。我想知道如何不仅在 2 个信号之间而且在 3 个或更多信号之间实现这种方法。
distance,warp_path = fastdtw(series2,series1,dist=euclidean)
解决方法
您本质上需要构建一个矩阵,在该系列的所有可能组合上评估 FastDTW 算法。
import fastdtw
import scipy.spatial.distance as sd
def my_fastdtw(sales1,sales2):
return fastdtw.fastdtw(sales1,sales2)[0]
distance_matrix = sd.pdist(sales,my_fastdtw)
您可以查看此线程以获取有关如何操作以及其他可能性的参考:Efficient pairwise DTW calculation using numpy or cython
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。