EdgeRank
EdgeRank 是今年 Facebook 在 F8 开发者大会上提出的对 fb 新鲜事 (Feeds) 排序的新算法, 用于区别默认的按时间逆序的 timeline. 不像 PageRank 还有很多论文或学术界的资料, 目前没有什么官方资料讨论 EdgeRank, 搜到的资料大部分来自在线广告代理公司或优化团队.
EdgeRank
EdgeRank 用于当某个用户查看他的新鲜事时, 决定这些新鲜事先后顺序的一个排序算法. 算法核心是每个事件对这个用户而言的权重 E, 其计算公式是 E = u*w*d, 其中
- u, 事件生产者和观察者之间的亲密度
- 亲密度主要指的是互动情况, 互动越频繁亲密度越高
- 互动可以是单向的, 比如 A 经常关注 B, 而 B 不怎么关注 A, 那 u(a,b) 和 u(b, a) 的权重不一样
- w, 边权重 (主要是事件的类型)
- 边权重主要受事件类型影响, edgerankchecker 给的关于点击跟其他事件的关系可以大概说明
- i. Avg Clicks Per Like: 3.103
- ii. Avg Clicks Per Comment: 14.678
- iii. Avg Clicks Per Impression: 0.005
- d, 时间衰减因子
- 比较少见到讨论时间衰减因子怎么做的, 猜测是类 log 变化
- 如果将 EdgeRank 公式只保留 d, 则 EdgeRank 退化到经典 timeline 模式
GraphRank
EdgeRank 用于描述某事件对某观察者而言的重要性, 考虑了事件生产者和观察者的亲密度, 事件类型以及时间衰减因子. 而对于一些还不是好友关系的事件需要 push 时 (比如一些公共信息), 或是来自好友的分享, 还要考虑分享是否需要被关注, 则引入 GraphRank 的概念.
GraphRank 跟 EdgeRank 的区别主要是在 u*w*d 之外, 再加了一层事件生产者和观察者之间的相关度, 变为 u*w*d*r.
其中相关度 r 是一个和亲密度无关的影响因子, 亲密度更多受最近的互动频度影响, 相关度则是一个时间无关的特征, 描述两者相似度
EdgeRank 的意义
Timeline 模式对大多数人来说其实已经够用, 而 EdgeRank 排序后的 Feeds, 并不能有一个很好的效果评判标准. 看用户在 Feeds 模式下是否有比 Timeline 模式更好的体验怎么看? 用 item 的先后顺序和点击序列做比较? 很难, 而且因为面对的是有感情的人 难保今天我心情好愿意什么都看看, 明天心情不好就只看所谓的感兴趣内容, 那怎么判断某天的效果好坏? 难不成 fb 还能预测我心情?
从大部分广告相关的资料来看, 受 EdgeRank 影响最大的应该是那些企业用户. 以前企业用户可以花比较低的价格建立一个公共主页 (Page), 然后以比常规广告便宜得多的方式获得大量粉丝 (Fans/Follower), 对于这些成为粉丝用户, 企业的新广告就可以以几乎免费的价格推送到这些人的 timeline 中. 显然这样的结果不是 Facebook 乐于见到的, 你们都可以不花钱做广告了, 那我们喝西北风么? 而且, Facebook 也想通过 EdgeRank 让企业知道, 他的多少粉丝是僵尸粉, 都是没意义的.
回到 EdgeRank 的定义, 相比较 timeline 模式的, 区别就在多出来那两个参数 u 和 w, w 没什么好说的, 可以认为就是简单加权, 或者考虑事件对用户的重要度, u 才是 EdgeRank 的核心所在. 如果 a 跟 b 互动少, 那么 u(a,b) 值变低, 则导致 b 发布的东西在 a 那的排名就会很低, 如果把 a 看成一个粉丝, 而 b 是某企业的主页, 则这个主页发布的消息在这个粉丝这可能就完全看不见了.
所以, 为了保持现有粉丝的有效性, 企业必须经常发布一些互动活动来保持现有粉丝的活跃度, 否则千辛万苦弄来的粉丝都没意义了. 而同时为了把那些已经僵尸掉的粉丝挽救回来, 以及扩展新粉丝, 企业还是需要投放大量广告, 这样 Facebook 的广告业务就不会因为公共主页粉丝数变多而衰落, 整个公司也就能一直维持很好的盈利状况了. (最后这段有点阴谋论和职业敏感在里面, 大家看看就好)
参考资料
- http://techcrunch.com/2010/04/22/facebook-edgerank/
- http://edgerankchecker.com/edgerank/learn
- http://edgerankchecker.com/blog/
- http://www.socialmediaexaminer.com/6-tips-to-increase-your-facebook-edgerank-and-exposure/
- http://qing.weibo.com/2282115205/88065085330003gq.html
- 本文来源于:http://www.yewen.us/blog/2011/12/intro-edgerank/
EdgeRank的更多相关文章
- 流动的推荐系统——兴趣Feed技术架构与实现
流动的推荐系统 我们经常谈论的推荐系统(Recommender System),从形式上看是比较“静态”的推荐,通常位于网页主要信息的周边,比如电商网站的“看了又看”.“买了又买”.这种推荐系统在大多 ...
- 一篇文章看懂Facebook和新浪微博的智能FEED
本文来自网易云社区 作者:孙镍波 众所周知,新浪微博的首页动态流不像微信朋友圈是按照时间顺序排列的,而是按照一种所谓的"智能排序"的方式.这种违背了用户习惯的排序方式一直被用户骂, ...
随机推荐
- NSClassFromString,NSSelectorFromString,isKingOfClass
1. NSClassFromString 这个方法判断类是否存在,如果存在就动态加载的,不存为就返回一个空对象; id myObj = [[NSClassFromString(@"MySpe ...
- Java入门第二季第一章类和对象知识点
Java 中的 static 使用之静态方法 1. 静态方法中可以直接调用同类中的静态成员,但不能直接调用非静态成员.如: 如果希望在静态方法中调用非静态变量,可以通过创建类的对象,然后通过对象来访问 ...
- TreeView控制消息
控制消息的作用 通过发送消息到Treeview控件, 就能够控机Treeview控件.常用的控制有: 获取被点击的节点 获取节点的文本 设置节点的文本 获取节点的父节点 获取节点的子节点 TVM_GE ...
- Google Daydream 在中国的第一次演讲摘录
从 PC.手机到 VR/AR,计算机平台正在迁移,而在这个过程中,与用户使用体验息息相关的「人机交互方式」也将不可避免的发生变化.作为这几波浪潮的弄潮儿,Google 怎么看这种人机交互方式的演进? ...
- LR设置关联---部分内容摘自网络--望见谅
模拟环境---LR机票定票系统设置:首页点击administration-勾选Set LOGIN form's action tag to an error page.选项,点击update. 现在许 ...
- MIPS指令集
MIPS 指令集(共31条) 助记符 指令格式 示例 示例含义 操作及其解释 Bit # 31..26 25..21 20..16 15..11 10..6 5..0 R-type op rs rt ...
- maven初步入门demo
Maven是跨平台的项目管理工具.作为Apache组织中的一个颇为成功的开源项目,主要服务于基于java平台的项目构建.依赖管理和项目信息管理. maven本身使用java开发而成,所以使用前确保电脑 ...
- CSS3学习之——【特殊属性】
一.CSS3的一些特殊属性 1.1 text-shadow text-shadow曾经在css2中就出现过,但在css2.1版本中又被抛弃了,现在css3.0版本又重新捡回来了.这说明text-sha ...
- 网页数据抓取(B/S)
C# 抓取网页内容(转) 1.抓取一般内容 需要三个类:WebRequest.WebResponse.StreamReader 所需命名空间:System.Net.System.IO 核心代码: We ...
- Linux Curl常用命令使用【转】
Curl是Linux下一个很强大的http命令行工具,其功能十分强大. 1)读取网页 $ curl linuxidc.com">http://www.linuxidc.com 2)保存 ...