Interactions Rank,挖掘用户的社交图谱

PageRank是Google十年前提出的一种网页评级方法,也是Google用来衡量一个网站质量好坏的重要因素。利用 PageRank,Google不断地改善搜索结果的排序,打造出目前最受欢迎的搜索引擎。相继搜索业的蓬勃发展,互联网领域又出现了一只新秀——社会网 络(SNS)。如今,Facebook几乎代表了SNS的领航者。在F8大会上,来自Facebook的工程师介绍了关于news feed的算法,称之为Edge rank。Edge rank考虑了SNS网站用户之间的交互行为和交互的时效性,从而计算新鲜事出现权重,达到优化新鲜事排序、以及改变仅按时间排序的现状的目的。Edge rank算法的好坏还需要时间来验证。

Interactions Rank是Google的科学家最新提出的一种基于用户交互的社交图谱分析算法【1】,它定义用户与好友圈子之间的交互类别,并对不同的交互行为进行打分,找出与用户最亲密的好友圈子。

在Interactions Rank算法框架下,社交图谱用带权值的有向图来表示。图的节点代表用户,图的边代表用户之间的交互关系。考虑到用户之间的交互有主动和被动之分,图的边定义为带方向的,并且不同的方向有不同的权重。

从上面的计算公式中可以看出,Interactions Rank主要考虑了以下三方面的因素:

  1. 交互频率:用户与好友圈的交互频率越高,代表该好友圈相对用户的权重越大。
  2. 交互的时效性:好友圈的权重随着时间不断变化。
  3. 交互的方向:用户主动与好友交互要比被动交互对Interactions Rank产生的影响大。

总之,Interactions Rank从用户的一组交互数据中计算而来,其中和分别表示好友圈子对该用户和该用户对好友圈子发起的互动行为。是当前时间,是发生交互行为的时间戳。可以 调节时间因素对Interactions Rank的影响大小,可见,时间对Interactions Rank的影响是呈指数型衰减的。

好友推荐是SNS网站帮助用户拓展人脉关系的有效途径,Interactions Rank为好友推荐提供了很好的依据。推荐引擎需要分析用户的社交关系,找到用户最可能认识的人。在拓展用户的好友圈子中,Interactions Rank作为重要因素来衡量与用户发生交互的人之间的相关度,相关度越高,被推荐的概率越大。

Interactions Rank的方法已被Google的电子邮件服务用来为用户推荐可能的收件人。当用户撰写一封电子邮件,在填写收件人名单时,推荐引擎会根据当前填写的名单 为邮件撰写人推荐更多的收件人。其原理就是基于 Interactions Rank,对已填写的收件人群组进行扩充。该方法还被用来对用户的收件人列表进行纠错,对拼写错误的收件人地址提供修改建议。

【1】“Suggesting (More) Friends Using the Implicit Social Graph”, Maayan Roth, Tzvika Barenholz, Assaf Ben-David, David Deutscher, Guy Flysher, Avinatan Hassidim, llan Horn, Ari Leichtberg, Naty Leiser, Yossi Matias, Ron Merom, International Conference on Machine Learning (ICML), 2011.

InfoQ相关内容:

文章:社会化推荐在人人网的应用

视频:社会化推荐算法在人人网的应用实践

作者简介:张叶银,毕业于中科院自动化所,目前担任人人网Social Graph算法工程师,主要负责Social Graph算法的研发,感兴趣的方向主要有大规模数据挖掘机器学习的应用及社会化计算。

posted @ 2013-03-18 02:15  busyfruit  阅读(248)  评论(0编辑  收藏  举报