background image
后面,可以忽略不记.
到此,我们可以计算出每个分类的软件排行棒,当然不需要全部,取前 5000 个就足够了.
协同计算
所谓的协同过滤,就是用相同行为的用户数据,过滤掉自己的数据.
因此,分类的软件排行榜已经计算好了,每个用户的分类也已经计算好.所以接下来的事情就
比较简单了.
直接将用户 A 的分类的软件排行榜,过滤掉用户 A 已经安装的软件,之后得出的列表就是用户
A 推荐列表.
针对每个用户的推荐列表,我们取 1000 个.下面就是推荐列表的展示问题了,有 1000 个软件,
如何展示?
笔者也简单的介绍几种常用的:
1.直接按照排名展示
该方法最直接,什么都不需要作,直接展示既可以
优点:简单
缺点:排行后面的软件展示的机会不多,甚至为 0,用户一般不可能查看很多的推荐列表
2.随机展示
随机从用户的推荐列表抽取 N 款软件展示
优点:所有软件都有展示的机会
缺点:展示无目的性,无法进行人工干预(比如广告(*^__^*) 嘻嘻……)
3.按照权重展示(效果最好)
该方法是基于随机展示的改版
1.定义软件权重
定义权重有很多种,最简单的就是按照排名逐渐降低,比如排名 1-20 的权重为 100,20-40
为 80,50-60 为 70 等等
2.按照权重随机展示
随机生成随机数, 和所有权重和求余,根据结果落点得出软件.
该方法可以保证后面的软件也有展示的机会,只是机会比较少而已,而且该方法可以人工
的调整软件的展示权重,比如可以调高 QQ 这款软件的展示权重,那么展示的机会也就越大,
广告收入也就越多。
文章来自:Sean's Blog
http://blog.163.com/sean_zwx/blog/static/16903275520145160540573/