问题标签 [dtw]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1406 浏览

python - Tensorflow 中的动态时间规整实现

我已经将一个动态时间扭曲实现从普通的 python 重写为 Tensorflow。但它真的很慢——比预先计算距离并将它们作为数据加载到 Tensorflow 中要慢得多。我不知道为什么它很慢或如何改进它。

我也尝试过使用签名转换其他 DTW 实现,但没有成功。有什么建议么?

0 投票
1 回答
2662 浏览

python - 聚类相似的时间序列?

我有 10-20k 个不同的时间序列(24 维数据——一天中每个小时的一列),我对聚类时间序列感兴趣,这些时间序列表现出大致相同的活动模式。

我最初开始实施动态时间规整 (DTW) 是因为:

  1. 并非我所有的时间序列都完全对齐
  2. 出于我的目的,两个稍微偏移的时间序列应该被认为是相似的
  3. 形状相同但尺度不同的两个时间序列应该被认为是相似的

我在使用 DTW 时遇到的唯一问题是它似乎无法很好地扩展——fastdtw在 500x500 距离矩阵上大约需要 30 分钟。

还有哪些其他方法可以帮助我满足条件 2 和 3?

0 投票
0 回答
102 浏览

python - 有没有办法将矢量拉伸到相同的长度?

我可以知道有什么方法可以使两个向量的长度相同吗?

x 轴是深蹲运动
的 x 轴 y 轴是时间范围

蓝线 x 是第一个深蹲动作 --> 黄线 y 是第二个深蹲动作

有没有办法拉伸黄线,使两个向量的长度相同。在我们拉伸黄线之后,最好保持与以前一样的模式。

我听说过很多使两个向量长度相同的方法,例如填充零、信号归一化或嵌入,但直到现在,我仍然找不到好的解决方案。

在此处输入图像描述

非常感谢您的回答。

0 投票
0 回答
76 浏览

matlab - Matlab dtw距离时间扭曲 - 未定义函数“dtw”用于“双”类型的输入参数

大家好,

使用matlab dtw 函数时出现此错误

错误:“双”类型的输入参数

通过尝试分析我自己的一些函数,我注意到 matlab dtw 函数需要双倍作为输入。因此,我尝试了 matlab 页面https://de.mathworks.com/help/signal/ref/dtw.html中的一个示例,但是这个示例出现了相同的错误。我做错了什么?

在此处输入图像描述

0 投票
0 回答
133 浏览

java - 这个动态时间规整代码是如何工作的?

我正在研究这段代码以找到动态时间扭曲距离,但我无法理解某些部分。

首先,为什么这条线会创建一个“垂直”数组[2][n2+1]

其次,在最后一行我们为什么要打印table[0][n2]?最终值不应该是[n1][n2]

最后,为什么我们在这里交换?

0 投票
0 回答
71 浏览

python - python中时间序列的对齐

我有两个不同长度的时间序列:

由于第一个时间序列的长度为 186,第二个为 134,因此我想重新调整这两个序列的大小,以便将它们描述为长度为 141 的时间序列。

为此,我尝试使用一种称为动态时间扭曲的方法,方法是按照以下步骤操作:

  1. 我将时间序列重塑为(-1,1)
  2. 我使用了长度为 141 的参考系列ref,我计算了系列的曼哈顿距离x1x2.
  3. 使用dtw(x1, ref, dist=manhattan_distance1)dtw(x2, ref, dist=manhattan_distance2)

但是,如下所示,绘制的环绕路径没有显示任何对齐(x 中的最大值不同)。

DTW

我错过了什么吗?


这是完整的代码:

0 投票
1 回答
3160 浏览

python - 用于多元动态时间规整的 Python 库 - 对多个系列进行聚类

我找到了关于使用 TSLearn Python 包对两个多元时间序列进行 DTW 的线程:Multidimensional/multivariate dynamic time warping (DTW) library/code in Python

但是,我想知道是否甚至可以进行多元时间序列聚类,即批量比较多元时间序列序列以找到相似性交叉矩阵。

0 投票
1 回答
1235 浏览

python - 在python中使用动态时间扭曲(DTW)进行时间序列相关

这是我的三个时间序列:

正如我所见,DTW 可以给我们输出,它可以告诉我们时间序列之间的相似性

但我不知道我们该怎么做?

我们怎么能用 DTW 的输出这么说呢?

哪个距离好??高还是低?

帮我解决这个问题

谢谢

0 投票
1 回答
152 浏览

r - 在 R 中查看最佳 dtw 对齐

我正在使用 R 中的 dtw 包来对齐时间序列数据。我可以轻松获得对齐,但无法弄清楚如何显示两个时间序列匹配(拉伸/压缩对齐)的峰值的最佳对齐。绘制对齐会导致相应的峰在它们之间显示虚线,而不是显示拉伸版本。如何同时显示两个波形的拉伸版本。

这是我正在使用的代码:

未平滑和平滑的图如下所示: 在此处输入图像描述

在此处输入图像描述

但我需要它们看起来类似于在 Mathematica 中使用 DTW 可以实现的图,如下所示: 在此处输入图像描述

0 投票
2 回答
785 浏览

r - R中的聚类时间序列-K均值准确吗?

我的数据集由 105 个国家(行)的 14 年(列)相同指数的测量组成。我想根据一段时间内的指数趋势对国家/地区进行聚类。

我正在尝试利用 DTW 距离矩阵(包)的分层聚类( hclust)和 K Medoids( )。pamdtw

我还尝试了 K 均值,使用 DTW 距离矩阵作为函数的第一个参数kmeans。该算法有效,但我不确定其准确性,因为 K 均值利用欧几里德距离并将质心计算为均值。

我也在考虑直接使用数据,但我无法理解结果如何准确,因为该算法会将同一变量随时间的不同测量视为不同变量,以便计算每次迭代的质心和欧几里德距离将观察结果分配给集群。在我看来,这个过程似乎不能对时间序列以及 Hierarchical 和 K Medoids 聚类进行聚类。

在对时间序列进行聚类时,K 均值算法是一个不错的选择,还是最好使用利用距离概念的算法作为 DTW(但速度较慢)?它是否存在允许使用具有距离矩阵的 K 均值算法或特定包对时间序列数据进行聚类的 R 函数?