gpt4 book ai didi

算法:了解两条折线图何时相似

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:16:22 25 4
gpt4 key购买 nike

我正在尝试开发一个能够理解两条折线图何时相似(它们具有相似的方向或相似的值)的脚本。

例如假设我有两个数组:

array1 = [0,1,2,3,4,5,6,7,8,9,10];

array2 = [2,3,4,5,6,7,8,8,10,11,12];

如您所见,它们的增长和值(value)非常相似。

目前我已经找到了一个使用 DTW 的完美解决方案算法。问题是 DTW 有一个非常快的“训练部分”(我只需要存储很多折线图)但它有一个很重的预测部分,因为它比较最后一个折线图和内存中的所有其他折线图。

所以我的问题是:是否可以在训练部分移动计算复杂度时间以便进行更快的预测?例如创建搜索树或类似的东西?如果可能的话,我可以将信息聚类到哪个特定值?

您有什么建议或有用的链接吗?

最佳答案

通常可以通过将对象从您的域映射到线性空间来实现。例如,您可以看到它如何用于自然语言中的词嵌入(word2vec tutorial,跳到“可视化学习到的嵌入”)。在此设置中,对象之间的相似性由线性空间中的距离定义,计算速度非常快。

在您的情况下,映射的复杂程度在很大程度上取决于您的数据:图表的多样性以及您希望捕获的相似性。

在包含两个向量的示例中,可以计算单个值:regression line 的斜率.如果您的图表本质上是“有点线性的”,这可能会起作用。如果您还想捕捉正弦曲线模式,您可以尝试通过减去第一个值来标准化时间序列。同样,在您的特定示例中,它将显示出完美的契合。

底线:映射的复杂性由数据的复杂性决定。

关于算法:了解两条折线图何时相似,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46316599/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com