前言
YouTube在2016年的时候,用深度网络完成了工业级的视频推荐系统,主要分为候选视频集的选择和线上的rank,虽然时间过去两年了,对我们的推荐系统仍有极强的学习参考价值。
背景
深度学习在学术界频发神级文章,工业界的推荐系统还没有特别重量级的成果,YouTube则在2016年给大家带来了DNN在推荐中的最新探索paper。主要应用场景:为YouTube用户提取候选视频集,并对其排序展示给用户,追求最大化的观看时长。(追求时长,隐含着追求用户体验,并争取用户在APP上的更多时间,同时意味着用户习惯的养成)
亮点
1) 推荐系统经典结构的深度学习化, → \rightarrow → 向量化 + DNN
2) 超多类在分类时的高效解决方案, → \rightarrow → 负采样方法
3) 加权逻辑回归解决预测时长问题, → \rightarrow → 正样本上采样
![](https://i-blog.csdnimg.cn/blog_migrate/1480f2ea9e866a46abb4f4d4ff1490cc.png)
数据特点: 巨量用户和数据;新数据响应快;数据稀疏与噪声。其整体视频推荐系统框架,如上图。这个推荐结构非常经典,现在了解到的推荐相关的系统基本都是这么个套路。
Recall Module
![](https://i-blog.csdnimg.cn/blog_migrate/f117a9b86322785e731b1b52f0174927.png)
目标:利用点击观看日志学习用户的点击概率,给用户筛选出候选集。特征:将视频做Embedding化,搜索query也作Embedding化,同时加入其它的用户信息,预测用户对不同视频的点击概率。因为将所有视频做分类,成了百万级规模的softmax,不是简单地按照视频类型作分类。怎么学习呢?引入负样本采样法,来构造训练样本集,一个观看完毕的正样本,再加上采样的几千条该用户没观看的负样本【语言模型中常见的负采样技术,构造负样本与正样本共同估计正样本发生概率同时降低计算压力,这里的采样没说是什么分布的,猜测是按照点击出现的频率来采样的】。在当前上下文 { U s e r , C o n t e n t } \{U_{ser}, C_{ontent} \} { User,Cont