我有96个48个浮点数的序列。有三种不同的分组(大小未知)。最初,我不知道哪个序列属于哪个组。我的目标是创建一个算法来找到它。最好以图形方式显示(见下文 - 灰度表示的浮点数的大小):
我的目标是从左边的未分类图像转到右边的图像。
我的想法是对序列进行某种形式的分析,并将最接近的匹配分组。分析可能是:
我可以想象如何做选项A.但是我对选项B很粗略,并且我确信我不知道有几种方法。
我的问题很高:
有人可以推荐一类我可以用来做这个的算法吗?
任何人都可以推荐开发此类算法的程序或起点(欢迎使用书籍章节建议)吗?
我也很满意书籍章节等的建议。我通常使用Numpy / Scipy - 因此标签,但这个问题并不是真正的语言。
答案 0 :(得分:1)
看起来峰和谷完全对齐,只有深度不同。我试着:
对序列进行线性标准化,使其平均值和方差对齐,即[1,0,1,0]和[5,-5,5,-5]均归一化为[1,-1 ,1,-1]。
然后计算序列差异的平方和,并将其视为距离。
显然,这只是一个起点。这可能不会开箱即用,因此请查看错误分类,以检查导致它们的原因以及如何解决这些问题。
答案 1 :(得分:1)
只是一个想法(没有时间写一个完整的答案):
似乎一个群体中的成员主要因某种缩放而不同,所以首先要做一些“正常化”,正如拉法尔所建议的那样。
在归一化之后,组内的所有成员将是在N维空间中大致指向相同方向的向量。然后,您可以将它们分成几组使用clustering algorithm,例如使用kmeans函数。