从facebook和twitter上的朋友中找到相似度分数的算法


algorithm to find a similarity score from facebook and twitter friends?

使用PHP从facebook和twitter获取好友列表,并将每个列表存储在一个关联数组中。我知道他们的名字和地点。我想根据他们的名字和位置对facebook和twitter上的朋友进行比较,并提供一个相似度评分。

比如我想设置一个0.7的阈值,如果一个人的分数大于0.7,那么这意味着他们代表同一个实体。我使用了php函数similar_text,但它太基本了,它几乎为每个朋友提供了50 - 60%的匹配,因为它只是基于名称中的单词。

有什么建议吗?

您可能想要考虑向量空间模型:将每个名称和位置表示为非常高维空间中的一个维度。将twitter表示为一个矢量,将facebook表示为另一个矢量。例如,如果我在facebook和twitter上都有一个叫Mike的朋友,那么"Mike"维度在两个向量中都有一个非零值。通过比较这两个向量之间的角度,我可以计算出相似度得分。角度越小,表示相似程度越高。一个简单的例子:

我的推特朋友们:阿达艾伦贝丝丹娜Jon

我的facebook好友:安妮贝丝丹娜Jon

空间包含以下维度:& lt;艾达、艾伦、安妮、贝丝、达纳、乔恩>

Twitter向量:t = <1, 1,0, 1,1,1>

Facebook向量:f = <0、0、1、1、1>

夹角等于ArcCos ([ f ]/[ | 相关文章: