2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

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

  • 2012-02-29
  • 本文字数:1296 字

    阅读完需:约 4 分钟

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 算法的研发,感兴趣的方向主要有大规模数据挖掘机器学习的应用及社会化计算。

2012-02-29 21:283487

评论

发布
暂无评论
发现更多内容

Android开发——优化Glide加载超大gif图

android 程序员 移动开发

Android开发进阶之路,你需要掌握这些关键技术!40万年薪不是梦

android 程序员 移动开发

Android性能优化之启动加速35%

android 程序员 移动开发

Android开发没有一技之长就废了吗?

android 程序员 移动开发

Android打造不一样的新手引导页面(二)

android 程序员 移动开发

Android技能树 — Activity小结

android 程序员 移动开发

Android最傻瓜式的AOP框架

android 程序员 移动开发

Android属性动画——ObjectAnimator类及浮动菜单的实现

android 程序员 移动开发

Android开发中如何实现折线图的方法 (1)

android 程序员 移动开发

Android开发工程师:都想要进大厂,那么大公司面试的方向和面试官套路你都摸透了吗?

android 程序员 移动开发

Android开发:为什么除了Flutter之外,我们还需要另一个跨平台开发框架?

android 程序员 移动开发

Android开发 申请Mob的SMSSDK的短信验证码功能中获取MD5签名(更新中)

android 程序员 移动开发

Android开发进阶,需要掌握这几个关键技术是关键!

android 程序员 移动开发

Android开源的精美日历控件,热插拔设计的万能自定义UI

android 程序员 移动开发

Android应用进程间通信之Messenger信使使用及源码浅析

android 程序员 移动开发

Android开发3年,4个月面试,终于拿到小米、京东

android 程序员 移动开发

Android性能优化案例(3)内存抖动和泄漏的优化

android 程序员 移动开发

Android开发工程师:都想要进大厂,那么大公司面试的方向和面试官套路你都摸透了吗?(1)

android 程序员 移动开发

Android开发热门前沿知识

android 程序员 移动开发

Android性能优化面试题集锦

android 程序员 移动开发

Android技能树 — 树基础知识小结(一)

android 程序员 移动开发

Android备忘录《内存泄漏》

android 程序员 移动开发

Android屏幕适配方案

android 程序员 移动开发

Android岗高频面试题二集,看你能答出几题?(含答案

android 程序员 移动开发

Android开发3年,九月份面试12家大厂跳槽成功,我有一些面试经验想分享给你们

android 程序员 移动开发

Android开源框架(整理)

android 程序员 移动开发

Android日常开发问题总结:这些问题火候不够,随时变成删库跑路!

android 程序员 移动开发

Android常见问题及开发经验总结(一)

android 程序员 移动开发

Android平台HTTPS抓包全方案

android 程序员 移动开发

Android开发7年,疫情期间八家大厂高工的面试经历和真题整理

android 程序员 移动开发

Android开发简记:Java和Android程序员都应该掌握的虚拟机知识

android 程序员 移动开发

Interactions Rank,挖掘用户的社交图谱_Google_张叶银_InfoQ精选文章