A 为某篇文章的具体发布时间,精确到秒;B 为一个固定的时间常量,2008-12-01 00:00:00。则可以计算得到 A 和 B 间隔的秒数 ts。
ts=A-B
M表示某篇文章的来自于微博客的推荐次数,R代表来自于阅读器分享的分享次数,D代表来自于网摘收藏的次数。引入不同权重因子,则可以计算得到变量Z:
Z=M*3+R*1+D*0.8
最后定义 SRRank 公式为,
SRRank=log10Z+ts/45000
参数注解基本和Reddit一样,不同的就是没有反对票:
1)时间点 B,2008-12-01 00:00:00,是一个固定的值。ts 反映了文章的新鲜程度。引入 B 是一个非常优雅的技巧,它使得新鲜度的度量可以独立于系统当前时间。
2)45000 代表的是一个 12.5 小时周期内的总秒数。它 与 ts 一起使用,随着时间的推移,新文章的得分会逐渐超越高投票数的老文章,从而实现自动更新的效果。
3)log10 的使用是另外一个技巧,它可以使得早期的投票获得更大的权重。比如,前 10 票获得的权重,与 11 到 101 票所获得的权重是一样的。
http://www. cnblogs.com/zhengyun_us tc/archive/2008/12/22/ju690_sr.html
可以关注一下郑昀的博客。