热榜推荐算法总结
影评类网站(豆瓣,IMDB),资讯网站(hacker news),问题回答网站(知乎,stackoverflow),视频网站(腾讯视频,爱奇艺,优酷)都会使用热榜,吸引用户来观看优质的内容。
可以根据几个重大特征分为几种不同的榜单
比如按时间维度可以得到最新榜单
按访问量(点击量,播放量)可以得到最热榜单
按着评分可以得到好评榜单
1简单粗暴的算法
使用简单一个维度的数据算法出一个值,然后按这个值排序
比如最新就按发布时间的时间戳进行排序,最热就是使用总播放量,好评就是所有用户评分求平均
由于视频每时每刻都在发布,所以这个值在变化。当某个播放量很高时,一直都排在前面,随着时间的流逝,top的榜单几乎不变化了。
使用这个算法的公司是Delicious
2.时间干预算法
之前没有考虑时间的因素。
Hacker News是一个资讯排行榜,用户觉得某个资讯好久可以投一票,这样的投票数就形成了一个最热排行榜。
P表示帖子的得票数,减去1是为了忽略发贴人的投票
T表示距离发帖的时间(单位为小时),加上2是为了方式最新的帖子导致分母过小。
G表示”重力因子“(gravity power) ,即将帖子排名向下拉的力量,默认值为1.8.
3反对票算法。
Reddit(美国版贴吧)
很多网站例如Reddit可以容许用户投反对票。Reddit一个类似贴吧这类的社区,不是一个激进,展示少数派刑法的地方,所有他们制定的排序算法是不会让有争议的文章排序靠前。
T=发帖时间减去2005年12月8号,Reddit成立时间。
y表示投票方向。如果赞成票居多,y等于1;如果反对票居多,y等于-1;如果赞成票和反对票相等,y等于0。
z等于赞成票与反对票之间差值的绝对值。
前一部分表示赞成票与反对票的差额越大,得分越高。后者t越大,得分越高,新帖的得分肯定会高于老帖子的得分,从而把老帖子的排名向下拉。
4.用户行为算法
有些特殊用途的网站,必须考虑更多因素,世界排名第一的程序员问答社区stackoverflow。
在上面提出各种关于编程的问题,等待别人回答。访问者可以对你的问题进行投票(赞成票或者反对票),表示这个问题是否有价值。
Qviews表示某个问题浏览次数越多,就代表越受关注,得分也越高、
Qscore(问题得分)和Qanswers(回答的数量)Qscore等于赞成票减去反对票。如果问题受到好评,排名靠前
Ascore回答得分。这一项得分越高,代表回答的质量越高
Qae距离问题发表的时间和Qupdated距离最后一个回答的时间
如果一个问题的存在时间越久,或者距离上一次回答的事件越久,Qage和Qupdated的值就相应增大。
5.威尔逊区间
设定
1每个用户的投票都是独立事件
2用户有两个选择,要么投赞成票,要么投反对票
3如果投票总人数为n,其中赞成票的比例p等于k/n
这是一种统计分布,叫做二项分布(binomial distribution).p值越大,代表这个项目的好评比例越高,越应该排在前面,对于P的可信度,取决于有多少人投票,如果样本太小,p就不可信。
排名算法:
第一步,计算每个项目的好评值(赞成票的比例)
第二步,计算每个”好评率“的置信区间(以95%)
第三步,根据置信区间的下限值,进行排名,这个值越大,排名越高
表示对应某个置信水平的z统计量,一般情况下,在95%的z统计值为1.96、n表示样本的大小。
Reddit现在在使用这个排序算法
6贝叶斯平均算法
为了解决排行榜总是那些票数最多的项目,新项目和老项目都难得到出头机会。排名可能长期靠后。
IMDB是世界上最大的电影数据库。系统根据投票结果,计算出每部电影的平均得分,然后通过平均得分,排出最受欢迎的前250名电影。
WR加权得分
R该电影的用户投票的平均得分
V该电影的投票人数
M排名前250名的电影的最低投票数
C所有电影的平均得分
C投票人数扩展的规模,是一个定义的常数,与整个网站的总体用户人数有关,可以等于每个项目的平均投票数
N该项目的现有投票人数
X该项目的每张选票的值
M总体平均分,即整个网站所有选票的算术平均值
它借鉴了贝叶斯推断的思想:不知道投票结果,先预计一个值,然后不断用洗的呢信息修正,使它越来越接近正确的值。
7微博知乎热搜算法
微博热搜最重要的是搜索热度和传播热度
微博热搜排序=(搜索热度+传播热度)*话题因子*互动因子
搜索热度一搜索量为基础,传播热度以热点相关博文阅读量为基础,话题因子以话题讨论量为基础,互动因子以结果也的转评赞互动率为基础
知乎热榜正比于浏览量,互动量,专业加权,创作时间和在帮时间。
8 bilibili热搜算法
主榜
总分=播放(站内)*分p修正*修正A+评论*修正B*50+硬币*硬币B*10+收藏*20
分p修正(四舍五入至小数点后三位) 修正A 修正B9 抖音热度算法
抖音上热门的算法包括几个关键的东西(转发,评论,点赞,播放时长,停留时长,停留轨迹,账户活跃度,粉丝数,经得起审核,经得起举报,具体的公式也没有公开。
平日账户的活跃度,给人点赞,评论,互动等,都会影响你账户的权重。权重分越高,那么发布的内容被推荐出去给更多人看的概率就会越大,分值越低展现就越少。所以千万不要用一些软件去引流,很容易给系统抓住,后降权,甚至封号,即使没有被封号,基本已经丢进小黑屋,限制流量,那么基本就废了。玩抖音运营的都知道,抖音是靠算法推荐才有展现的,但是随着抖音创作者者和用户的不断增加推荐机制也越来越严格,近期很多创作视频推荐都不理想。总结原因来看,没推荐很大原因是因为你的视频点赞率、评论率、分享率、完播率、复播率没有达到系统的要求。
10 今日头条热榜算法
公式:信息热度(H)=信息的初始热度(H0)+信息的交互热度(H(user))-随时间递减的热度(H(time))
首先得出该信息的所有关键词,方式:发布人自定义标签+系统根据标准词库和停用词库进行系统选择。
信息的初始热度(H0)
第一种计算法:根据该信息所属的分类进行热度计算。例如,娱乐类的S(0)=H*1.5,体育类的S(0)=H*1.2
第二类计算法:计算该信息的所有关键词与热词库的匹配度。S(0)=匹配度*H
信息的交互热度
H(User)=(1*阅读量+2*推荐数+3*评论数+4*分享数)*N
随着时间递减的热度(H(time))
11 掘金内容热度算法
H是一个内容的热度
W是一个文章的阅读量,评论数,点赞量加权求和的数值
I是一个内容的初始数值 文章作者的影响因子。这个影响因子与作者本身的历史掘力值有关
G一个衰减的重力参数
T文章发布以来的时长
作为掘金社区,我们希望将更好内容带给读者,丛书之上,我们希望总和的W变高,同时平衡其与
C:一篇文章本身的质量表达,多快获得点赞,获得阅读,点击量,点赞率
d:点赞率,点击率随着文章存在时间是否会衰减
12.新榜排名算法
新榜指数(New Rank Index,NRI)由新媒体排行榜基于海量数据,用户深度反馈以及专家建议推出,反应新媒体主体的热度和发展趋势。
整体指标(总阅读量,R)统计周期内所有发布内容的阅读数总和;优异指数(最高阅读R_m):是统计周期内所有发布内容中的单片最高阅读量;质量指标(平均阅读数R_a)统计周期内所有发布内容的阅读数的平均数;主动预判指标(R_h):统计周期内位置为头条的内容的阅读总和;互动指标(总点赞数):统计周期内所有发布内容的点赞数总和。
在不同的时间周期,即日,周,月,年(n=1,7,30,365)下,以上常数具体值的基础上,下列指标进行标准化:
指数加权
新榜指数的计算公式:
W_R=0.75,W_Rm=0.05,W_Ra=0.1,W_Rh=0.05,W_z=0.05
Reference:
从豆瓣电影评分算法说起https://www.jianshu.com/p/77ac83db802d
新榜指数(NRI)算法说明 http://www.jswku.com/p-14754787.html