天天看点

一篇关于youtube推荐算法的分享-基于用户行为的视频推荐

本文的前提:

(1)基于用户的的行为进行推荐

(2)本文只关注注册用户,只对注册用户进行推荐

(3)数据量级:Youtube每天 百万级别的视频 ,百万级别的用户,总的播放数量超过10亿

一篇关于youtube推荐算法的分享-基于用户行为的视频推荐

挑战:

(1)用户上载的视频经常没有元数据或元数据很少(视频的量级和用户的量级差不多)

(2)很多youtube视频时间很多(小于10分钟)User interactionsare thus relatively short and noisy.用户的交互相对就短有时会成为干扰数据。和netflix这样的网站不同,电影租借能很明确表达用户的兴趣

(3)In addition, many ofthe interesting videos on YouTube have a short life cycle going from upload toviral in the order of days requiring constant freshness of recommendation.很多视频在火之前,因为推荐需要新鲜性,这些推荐视频生命周期短

目标:

(1)匹配用户兴趣和目标视频的内容

(2)推荐的结果必须经常更新,以反应用户最近在网址上的活动(反映用户的兴趣的变化)

(3)推荐的可解释性

系统设计:

(1)总的思想是:推荐用户浏览过的videos相似的videos,以浏览过的videos作为产生推荐的种子(seed)

(2)用到的数据:因为video的元数据不完整或不正确或缺失给推荐带来了不准性和难度,所以本算法就不用这些数据。而是使用用户的浏览行为数据

(3)相似/相关的video(related video):

  • In this context, we define similar videos as those that a user is likely to watch after having watched the given seed video v.相似性定义为一起被观看的概率,概率越高,相似性或这相关度越高。
  • video vi 的相似性 video集和:Ri
  • In order to compute the mapping we make use of a well-known technique known as association rule mining [1] or co-visitation counts.用关联规则挖掘计算
  • Denoting this co-visitation count by cij , we define therelatedness score of video vj to base video vi as: 
    一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
  • global popularity
    一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
    ,或者可以定义为其他的全局正则化项
  • We then pick the set of related videos Ri for a given seedvideo vi as the top N candidate videos ranked by their scores

    r(vi, vj ). 挑选得分最高的n部vedio作为candidate

  • For each pair of videos (vi, vj ),

    there is an edge eij from vi to vj iff vj 2 Ri, with the weight

    of this edge given by ,可以看成是图或者是矩阵的形式

(4)推荐产生

  • S:用户显示表达感兴趣的视频集合,Ri:video相关联/相似的视频集和 ,candidate vedio 定义为:
    一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
  • 用C1作为推荐 但是有一个问题:推荐的视频比较窄,推荐的视频和S会非常相似,推荐的相似性必须保证推荐的多样性,可能对用户来说是全新的(不同主题、不同题材的)视频比较少。因此为了解决该问题,可以把C1作为seed产生种子,产生C2,一次类推产生Cn。这样可以保证推荐的多样性。其中
    一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
  • 最终的推荐candidate为(差集,看过的不推荐):
    一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
  • 推荐的candidate的排序:三个影响因素:video quality,user specificity,diversification.

(5)推荐评价

  • 推荐指标:CTR点击率
  • 用其他两种方法和推荐算法做对比:把具有最多浏览次数的视频作为推荐,把用最多户显示标为感兴趣的视频作为推荐,用户评分最高的视频作为推荐最终的最简结果比较如图所示
    一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
一篇关于youtube推荐算法的分享-基于用户行为的视频推荐
  • 从上图可以显著的看出推荐算法的点击率最高,因此推荐算法是有效的

声明:本文的所有内容来自以下文章 Davidson J, Liebald B, Liu J, et al. The YouTube video recommendation system[C]//Proceedings of the fourth ACM conference on Recommender systems. ACM, 2010: 293-296.

继续阅读