微博Karma和其算法的一些简单介绍
太久不做coding需要放松一下。于是就做了一个玩具。其实一直就想做一个类似PageRank的东西来鉴别一个微博博主的“能量”。经常看到有些微博博主有50-100万左右的粉丝,但发出来的微博几乎无人问津(零转发、零评论),于是就动手做了这个。
首先,明确一点,这个玩意只是一个玩具,优点和缺点都很明显。别指望JavaScript能获取和判断太多信息。但仅作为玩具来看,也能看到一些有趣的现象。所以如果是想获得专业和客观的“微博粉丝互动频度”、“微博僵尸粉丝数量”数据,不要盲目参考。举个简单例子,方舟子(只是我做数据分析的客观结果,舟子老师的粉丝不要怪我)的微博后面很多人是在骂他,而这一部分数据JavaScript是无法辨别的,因此都计算到方舟子这个微博的Karma里了。
同样,由于采用了一个简单的平均数的算法,因此突然爆红的微博也会导致Karma过高。比如某人说“梁博赢了我就切jj”,然后转发了30000多条,而他的粉丝只有几百人。这种情况也暂时没有过滤。于是我把评论的最大值给remove了。这样当然会导致所有人的Karma下降,但是不会出现一个普通博友超过韩寒的不正常现象了。
目前最新的计算方法是:
取得这个用户第一页的所有微博的评论和转发数
按照原创微博和二次转发(即转发别人的)分组
如果原创微博多于等于3条,则记录其转发数和评论数
如果原创微博少于3条,则将转发微博分组中的评论数和转发数纳入记录范围
对于二次转发超过15、50的分别给予3倍和5倍的加权,因为大号转发很多时候会把功劳记入原博主,但客观上都是自己的粉丝在出动。根据我的观察,基本上二次转发数在15和50以上就很牛了,所以予以加权
对于记录的评论数和转发数求平均值,然后,加上这个博主的粉丝数做一个运算,得到最终数字:
Karma = (转发*10 + 评论*5) / sqrt(粉丝数)
至于为什么选择10、5还有sqrt这些参数。这纯粹是个人灵感。没有任何逻辑,毕竟不像计量经济学那样可以找到大量数据来做参考。
为什么我的偶像Karma只有0?
https://chrome.google.com/webstore/detail/weibo-karma/bgdpegifffbkpfinfkikcioljnjajoih/
为什么我的偶像Karma太低了?
为什么我讨厌的人Karma还那么高?
是不是只支持Google Chrome?
是不是只支持新版微博?
你是来骗粉的、你低估了我的偶像,我很讨厌这个,如何卸载?
chrome://chrome/extensions/ 只能帮你帮到这了:)
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:aw 来源: aw's blog
- 标签: Karma
- 发布时间:2012-10-22 13:19:38
- [54] IOS安全–浅谈关于IOS加固的几种方法
- [52] android 开发入门
- [52] 如何拿下简短的域名
- [51] 图书馆的世界纪录
- [49] Oracle MTS模式下 进程地址与会话信
- [49] Go Reflect 性能
- [47] 【社会化设计】自我(self)部分――欢迎区
- [46] 读书笔记-壹百度:百度十年千倍的29条法则
- [37] 程序员技术练级攻略
- [29] 视觉调整-设计师 vs. 逻辑