是否有一种指标可以根据两个对象的属性来评估它们之间的相似性?

Is there a metric to evaluate similarity between two objects, based on their attributes?

假设我有一个对象 X 具有一组 10 个特征:[0, 0, 0, 0, 0, 0, 0, 0, 0, 0].

那么,我还有两个对象:

我需要知道 AB 中的哪个是 "closer" 到 X

我在"similarity"背后的想法是:

It is better that all features are nearly the same, rather than many are very close but some very different.

根据这个 "definition",A 似乎比 B 更接近 X

但是,算术平均值似乎不是实现这个想法的正确工具,因为它对于两个对象都是 2。

请问是否有针对此类问题的特定指标?

euclidean distance呢?

在您的例子中,A 和 X 之间的欧几里德距离是 40 的平方根(大约 = 6.32),B 和 X 之间的距离是 20,因此 A 确实更相似。

在特征非常不相似且可能变化不同的情况下,欧氏距离必须归一化。

这可以使用涉及特征方差的 Mahalanobis distance 来完成。

另请参阅 this question

您也可以考虑使用余弦相似度。余弦相似度衡量向量相对于原点的相似度,而欧氏距离衡量向量上特定兴趣点之间的距离。

Here 是一篇关于何时选择一个而不是另一个的好文章。

另一个常见的衡量标准是 Jaccard 相似度。 Here 是一篇比较余弦与 Jaccard 相似度的文章。