吹牛逼
按照经典的信息检索方式讲推荐系统划分为两部分
- 深度候选生成模型
- 深度排序模型
1. 介绍
youtube推荐系统面临的三个问题
- 规模:当前的推荐算法可以很好的解决数据量较小的问题,但是针对YouTube这种量级的用户和物料,必须使用专业的分布式训练平台。
- 新鲜度:youtube每天会产生非常多的新内容,推荐系统需要有足够的相应能力来处理新内容,做好新物料的探索和应用
- 噪声:由于稀疏性和各种不可观察的外部因素,YouTube 上的历史用户行为本质上难以预测。并且没有用户的显示反馈,所以需要进行隐式建模,这就要求算法有一定的鲁棒性。
- 反正就是,神经网络已经被应用在各种推荐之中,但是我知道他们都没有我牛逼
系统回顾
整个系统分为两个部分
- 候选网络。输入用户之前的行为,然后从百万级的物料中召回几百个与用户兴趣相关的物料,候选网络仅仅使用协同过滤来提供个性化召回。用户之间的相似性则使用粗略的特征来表示,例如之前看过的视频ID,一些用户维度的统计特征等;
- 排序网络。召回的物料已经有了一些区分,但是需要更多丰富的特征来对用户和物料进行建模,然后按照打分的顺序给用户推荐。
- 这种设计方式可以从大量的物料中筛选中用户感兴趣的商品,依然可以保证个性化,并且很容易增加其他方式的召回源。
- 离线评估指标主要有准召,logloss,auc这些,这些指标可以指导模型的迭代,但是为了确定模型的有效性,我们需要上线AB实验。线上可以观测到点击率,观看时长和其他衡量指标,AB实验可以直接观测模型带来的增量,但是很多时候离线指标好,并不一定与线上AB一致。
3 候选网络(召回)
候选网络可以在海量的物料中筛选出与用户相关的商品,候选网络使用基于MF的方法,但这里做了非线性优化。
3.1 推荐
- 将推荐看作多分类任务,预测问题转化为多分类的问题,即给定用户U和上下文C,预测物料集合中某个商品的分数
P(wt=i∣U,C)=eviu∑j∈VevjuP(w_t=i|U,C)=\frac{e^{v_iu}}{\sum_{j \in V}e^{v_ju} }P(wt=