【问题标题】:Is there a standard approach to find related/similar objects?是否有标准方法来查找相关/相似对象?
【发布时间】:2014-11-06 06:41:17
【问题描述】:

假设我有一组实体(例如具有其身体特征的人),并且我想为给定的实体 X 找到与其相关(或相似)的所有实体,以获得某种相似性的定义。

我可以很容易地找到一个维度的此类实体(所有身高 Y ~= X 的身高在某个阈值内的人),但是我是否可以使用某种方法来查找考虑多个属性的类似实体?

【问题讨论】:

标签: algorithm similarity correlated


【解决方案1】:

这将取决于您对相似性的定义,但您可以使用与一维相同的方法,对任何维度进行少量概括。假设每个元素都表示为一个向量,您可以将 2 个向量x,y 的距离测量为d=|x-y|,并根据此d 和一些阈值接受/拒绝。

在这里,减号运算符是向量求反:
(a1,a2,...,an)-(b1,b2,...,bn)=(a1-b1,a2-b2,...,an-bn)
并且绝对值再次用于向量:
|(a1,a2,...,an)| = sqrt(a1^2 + a2^2 + ... + an^2).

很容易看出这是您的一维示例的泛化,并且对具有单个元素的向量调用相同的方法将执行相同的操作。


这种方法的缺点是 (0,0,0,...,0,10^20)(0,0,0,....,0) 将彼此相距很远 - 这可能是也可能不是你所追求的,然后你可能需要不同的距离度量 - 但这真的取决于你到底在追求什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-09
    • 1970-01-01
    • 2012-04-05
    • 2021-10-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多