让我们说我想为矢量找到一个类似的矢量 a = [0 0 2 0 0 0 0 0 0]
我有两位候选人:
(a,b1)的欧几里德距离与(a,b2)相同。我想要的是 b1 获得更高的"相似度"得分了。是否有一个众所周知的方法(请说出来)来处理这些问题?某种模糊欧氏距离?
我能想出的一个可能的解决方案是计算(a,b1)的欧几里德距离,其中整个b1向左移动1个位置,然后向左移动2个位置,向左移动3个位置等,然后执行右移也一样。每次我这样做时,我都会通过一个权重来调整计算的欧几里德位置,该权重会随着移动距离的增加而减小。然后对b2重复相同的过程。然后比较结果以找到更好的匹配。
答案 0 :(得分:1)
看看levenstein distance。它对字符串进行操作,以找到相似性(编辑距离),但是当修改为在向量上使用时,它将获得与b1相比更高的与b2的相似性。可以对其进行修改以比较实际值(不仅仅是匹配/不匹配的字符)