这是谷歌youtube在2010的一篇文章,估计现在的思路有很多升级了,但是里面的知识点还是很不错的。主要讲youtube的个性化推荐思路。下面根据论文的结构我把我理解的思路整理如下,如果有问题,欢迎指出。
1 介绍
在信息抽取和内容发现方面,个性化推荐是非常关键的方法。
1.1 目标
推荐系统的目的是帮助用户发现他们感兴趣的高质量视频,来让用户乐在其中。
1.2 挑战
用户上传的视频的元信息非常少和粗糙、视频时长比较短、用户交互相对较短和有噪声、视频生命周期短。
2 系统设计
推荐系统算法保持实时性和新鲜性,就像多样性和相关性。推荐的视频是通过用户的行为来生成的,用户的行为包括观看、收藏、喜欢等来作为种子视频,然后通过在一个会话中同时观看来扩展。推荐系统的工程设计方面,保持各个模块尽量的解耦,保持各个模块的独立性。保持系统的容错和系统某一部分失败后优雅的降级处理方案。
2.1 输入数据
这里有2种数据可以考虑,1)是内容数据视频流、视频元信息(标题,标签等)。2)用户行为数据,包括显性和隐性数据。
2.2 相关视频
co-visitation counts,计算在用户的一个会话中(通常24小时),计算vi,vj共同被观看的次数,进而计算vi和vj的相关性。
r(vi,vj)=cij/f(vi,vj),cij是所有会话中vi和vj共现的次数,f(vi,vj)是视频欢迎度的归一化的函数,一个简单的归一化函数是f(vi,vj)=ci * vj,也可以是其他的归一化函数。
选择TopN推荐结果,也考虑了最小分值阈值,卡掉小的counts对。还有展示偏见、观看噪声。除了上面的co-visit,还可以考虑序列的和时间的有向图,以及视频元信息。
2.3 生成推荐候选列表
通过用户的喜欢,播放列表等种子视频进行N级的级联扩展,产生广阔和多样的候选结果。
2.4 排序
通过视频质量、用户特征、多样性,然后用显性融合的方式来产生排序的推荐列表。
2.5 用户交互界面
推荐的展示是非常重要的一部分。有一些特征是非常重要的,比如标题、视频年龄、受欢迎度、为啥推荐等来帮助用户决策是否观看。最后,增加让用户控制推荐结果的个数和位置。
2.6 系统实现
数据搜集、数据计算推荐结果、推荐结果提供服务。
3 评价
AB测试进行快速的评测,迭代。评价指标方面包括ctr、long ctr、会话时长、第一个long watch需要的时间、推荐覆盖等等。
4 结论
推荐系统、最多播放、最多喜欢、最大评分的效果对比。