如何确定社交网络中可能的连接?


29

我很想确定一种解决“建议的朋友”算法的方法。

Facebook具有一项功能,它会向您推荐您可能认识的个人。这些用户通常(不包括用户特别推荐朋友的极端情况)与自己的网络高度相似。即,共同的朋友数量很多。我认为Twitter的“关注对象”机制遵循类似的路径。

Facebook员工Stephen Doyle(Igy)表示,使用EdgeRank公式的相关新闻提要似乎表明,比起类似外表之类的朋友,有价值的更多。另一个用户建议使用Google Rank系统。

Facebook的指出他们的新闻饲料优化为哪里uewede

=查看用户与边缘创建者之间的亲和力分数 w e =该边缘的权重(创建,评论,喜欢,标签等) d e =基于创建边缘多长时间的时间衰减因子 ue
we
de

对这些项目求和应该可以得出对象的等级,正如Igy所暗示的那样,这意味着建议朋友使用相似格式的东西。

所以我猜想这是通常通过等级系统完成所有类型的连接的方式吗?


作为一个简单的起点,您可以使用“朋友之友”推荐系统。也就是说,如果你有很多朋友是人X的朋友,那么也许你应该成为朋友的人X.

1
有多种随机图模型试图捕获真实社交网络的结构。计算潜在边缘的可能性取决于您使用的模型和可用信息。
卡夫

Answers:


7

你可以把社交图谱作为基质的。解决该问题的一种方法是首先计算M 2,它将给出社交网络中两个参与者之间所有长度为2的路径。这可以看作是这些朋友之友之间联系的重心。下一步是从M 2的行中选择与感兴趣的人相对应的列,以获取新朋友的最佳人选。MM2M2


1
这将给出与人p之间的路径数,然后可以将其用于对朋友进行排名。我承认这很粗糙。fip
戴夫·克拉克

我认为使用图形对问题进行建模既容易又直观。
MMS

11

您正在寻找的是一种启发式方法。在没有朋友直接联系的两个人是朋友还是不是朋友的情况下,没有算法可以说。友谊/相识关系不能保证是可传递的(我们可以假设是对称的,但这甚至可能是现实生活中的延伸)。因此,任何良好的启发式方法都必须基于对人们互动方式的理解,而不是对关系图的本质有一些数学上的理解(尽管我们需要用这些术语来量化启发式方法)。

以相同的概率建议朋友的朋友是相对便宜但不准确的启发式方法。例如,父亲有朋友,但我不会说我与他们中的任何一个朋友在一起(尽管出于社交网络等目的,我可能会说我是父亲的朋友)。一个人相距较近并不一定会使他们成为理想的人选。

一般而言,建议与您拥有许多扩展关系的人似乎也是一个糟糕的选择,因为这将导致那些早日前进的人的朋友呈指数增长(与凯文·培根游戏的7度分离是这个例子)。

R

  _____
 /     \
a---c   f
|   | /
b   d---e
| \ |
g   h   i

假设我们想为寻找新朋友aa目前的朋友们bcf。我们评估的净等效电阻a和每个degh,和i

pair   resistance
(a,d)   6/7
(a,e)  13/7
(a,g)   7/4
(a,h)   1/1
(a,i)   inf

根据这种启发式 d是最佳的候选朋友,紧随其后hg是下一个最佳选择,紧随其后ei这种启发法永远不可能成为候选朋友。重要的是,是否发现这种启发式方法的结果可以代表真实的人类社会互动。从计算上来说,这将涉及找到包含两个个体之间所有路径的子图(或者可能是一些有意义的选择,将其截断),然后评估源节点和宿节点之间的等效电阻。

编辑:那么我对此的社会动机是什么?嗯,这可能是一个粗略的模型,说明与中介(朋友)联系并随后通过中介(朋友)交流可能有大量信息的难度。用CS术语(而不是物理术语),这可以解释为图中两个节点之间的带宽。该系统的扩展将允许具有不同权重(电阻,带宽等)的人之间进行不同类型的链接,并按上述步骤进行操作。


10

随着社交网络的普及,在这个问题上已经做了很多工作。该问题通常被称为“链接预测”,可以在此处此处找到非常好而全面的调查。方法的范围从非常简单(例如,节点之间的Jaccard相似性)到非常复杂(例如,生成生成连接过程的统计模型)。这在很大程度上取决于您数据集中可用的特定功能(例如,仅网络结构,节点属性?,边缘属性等),但是这些调查将为您提供一个从哪里开始的好主意。


4

免责声明:我在这里疯狂地猜测;我尚未阅读任何体裁研究。

您可以查看与节点拥有的连接数量相关的节点共享连接数。这是一个非常幼稚的(就本地而言)的想法,但是这是可行的。

每个节点 ñ (人或其他概念)具有一组联系 Cñ。现在,给定两个节点ñ1个ñ2, 建议 ñ2ñ1个 如果

|Cñ1个Cñ2||Cñ1个|α

为了一些合理的 α[01个] (反之亦然)。

另一个想法更具全局性:确定一组手头节点相似的节点,并提出许多节点共享的连接。因此,定义相似节点的集合

SN={M:|CNCM|Nα}

and the set plausible suggestions by

{S:MSN[SM]|SN|β}

again for reasonable α,β[0,1].

In reality, you would certainly want to weight connections individually; for instance, elements of SN that you are already connected with should have larger import than such that are far away from you.

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.