深度学习时代的推荐系统

2018 年 1 月 6 日 大数据技术 王亮

| 小象(微信号:AIReport)     | 王亮

深度学习在语音和图片识别等领域的效果有目共睹,各种介绍文章已经非常多了。但机器学习应用最广泛的推荐和广告领域,深度学习还刚刚崭露头角,相关的文章还不是特别多。本文结合一个典型的短视频推荐系统,介绍深度学习在这个领域的一些实际应用。

现在典型的推荐系统框架,基本都是二层结构,先是通过热门推荐、基于内容的推荐、协同过滤等方法,获得“候选推荐集”,然后通过CTR预估等对候选集进行二次排序,展现给用户。深度学习的作用,主要是对其中的某些环节进行改进。

Word2vect的应用

首先是基于内容的推荐,该方法也是目前信息类推荐中,应用最为广泛的。内容推荐的一个要点在于给文本打标签,一般都是粗粒度的“类别标签”+细粒度的“关键词标签”。其中类别标签就是一个典型的文本分类问题,如图1所示。


图 1 短视频的标签

常规的做法,就是用“TF*IDF”做特征,生成文本的向量空间模型,然后用LR、SVM进行分类即可。但用短视频标题做10多个分类, Accuracy很难超过60%。这个其实属于典型的短文本分类问题。基于TF*IDF这种one-hot类的特征,像这两个视频标题 : “白夜追凶精彩剪辑”和“潘粤明新剧火了” 的相似度为0。

这个问题早期的解决方法很多都是基于topic model的,最近则更多的使用词向量。用Google的word2vect等工具,可以方便的把短文本中每个词向量化,然后简单的进行向量相加、归一化,就可以很容易得到短文本的向量表示,用这些向量作为分类器的输出,效果改善非常明显。

短视频分类问题,很多又是“多标签(multi label)”问题,如一个视频可以属于“明星”,又可以属于“娱乐”。更典型的像知乎这样的社区,“标签/类别”数量本身也会非常多,“短文本+多标签+类别多”就形成一个非常有挑战性的问题。具体可以看看前一段时间知乎组织的“2017 知乎-看山杯机器学习挑战赛”,就是做一个2000个类别的多标签分类问题,数据还都开放。


图2 知乎看山杯的比赛题目

排名前面的队伍,基本思路大多是word2vect作为输入,用基于RNN/CNN的TextCNN/fastText、TextRNN等做学习网络,用交叉熵(Cross Entropy)作为损失函数。

还有就是协同过滤的流程,像基于用户的推荐,首先就要对用户两两求相似度,用户的向量表示,一般都是其浏览过的视频。在特征处理中,大家都看过的热门视频是没有用处的,一般都会过滤掉。但有些研究,就专门利用这些“热门”视频,把观看过的用户,按照观看时间点顺序列出,大概这样的(v表示视频,u表示用户):

v1:u1 u2 u3 u4…..

v2:u3 u6 u9 u10 ….

然后把视频v都当做“文本”,用户u都当做“单词”,好吧user2vect搞定了,然后我们基于这种user embedding方法,就可以求用户之间的相似度了。这种方法在喜欢围观的国内社区,尤为有效。

RNN/LSTM的应用

基于浏览时间序列做推荐,还有另外一种方法,主要是利用单个用户浏览视频的时间序列,如用户u1的观看过的视频依次为:

u1:v1, v4,v6,v10, ….

我们就可以用RNN/LSTM建立一个视频的序列模型,实践中可以使用相对活跃的用户来构建。使用模型的时候,利用sample的方法,输入用户的历史浏览记录,就可以预测推荐新的视频了。基本的训练算法如下图所示:

图3 基于用户浏览视频序列,训练RNN/LSTM模型

像网易严选的推荐系统,就有用到类似的时序模型。其推荐系统框架和用户特征框架如下图所示:

图4 网易严选的推荐系统和用户属性系统,图片原载于“推荐系统本质与网易严选实践”

CNN的应用

视频预览、广告创意图片等,在用户点击决策中,往往占据很大的比例,因此,目前工程实践中应用报道较多的深度学习方法,就是对视频截图、创意图等图片特征的提取,然后与其它特征一起,做CTR预估。

我们在做短视频推荐中,也尝试利用了CNN算法,抽取预览图片的深层特征,然后与其他特征一起,做CTR预估使用,但实测效果并不是特别明显。

再者,基于CNN提取的图片特征,本身就可以做图片之间的相似度,然后做item based推荐。这种方法推荐出来的一般称为“相同风格”的视频,典型的如下图所示:


图5 一组基于CNN特征获取的相似截图

像美团就使用到CNN等技术,提取图片深度特征,对图片进行质量评分。其主要使用AlexNet去提取图片的高层语义描述,学习美感、可记忆度、吸引度、品类等High Level特征,并补充人工设计的Low Level特征(比如色彩、锐度、对比度、角点)。在获得这些特征后,训练一个浅层神经网络对图像整体打分。

美团整体的推荐系统算法框架和图像特征提取框架如下面两图所示:      


图6 美团推荐算法框架,原载于“美团点评技术团队”网站


图7 美团图片深度特征提取,原载于“美团点评技术团队”网站

Youtube的推荐系统框架

YouTube作为Google自家的产品,其推荐系统自然是样板案例。YouTube推荐系统也经典的两层结构,其是由两个神经网络组成的,一个用于候选生成,一个用于排名。其具体的深度学习算法框架如下图所示:


图8 YouTube推荐算框架,图片原载于Deep NeuralNetworks for YouTube Recommendations ,RecSys2016

从上图中可以看到,YouTube主要使用了传统的用户的流量、评分等行为,包括序列信息等,并没有提到到截图等新特征。

短视频推荐实战课

最后简单说下我们的短视频推荐实战课。简而言之,我们的希望构建一个机器学习、深度学习的“朱日和”战场,涵盖完整的线上产品、真实的数据、各类算法落地等。以同学们为中心,把所学的各种理论知识都能实际的coding出来,反映的真实的产品中,真正做到实践出真知。

-END-


●本文编号493,以后想阅读这篇文章直接输入493即可

●输入m获取文章目录

推荐↓↓↓

算法与数据结构

更多推荐18个技术类公众微信

涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。

登录查看更多
8

相关内容

推荐系统,是指根据用户的习惯、偏好或兴趣,从不断到来的大规模信息中识别满足用户兴趣的信息的过程。推荐推荐任务中的信息往往称为物品(Item)。根据具体应用背景的不同,这些物品可以是新闻、电影、音乐、广告、商品等各种对象。推荐系统利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程。个性化推荐是根据用户的兴趣特点和购买行为,向用户推荐用户感兴趣的信息和商品。随着电子商务规模的不断扩大,商品个数和种类快速增长,顾客需要花费大量的时间才能找到自己想买的商品。这种浏览大量无关的信息和产品过程无疑会使淹没在信息过载问题中的消费者不断流失。为了解决这些问题,个性化推荐系统应运而生。个性化推荐系统是建立在海量数据挖掘基础上的一种高级商务智能平台,以帮助电子商务网站为其顾客购物提供完全个性化的决策支持和信息服务。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
深度学习自然语言处理概述,216页ppt,Jindřich Helcl
专知会员服务
212+阅读 · 2020年4月26日
Yann Lecun 纽约大学《深度学习(PyTorch)》课程(2020)PPT
专知会员服务
179+阅读 · 2020年3月16日
【新加坡国立大学】深度学习时代数据库:挑战与机会
专知会员服务
33+阅读 · 2020年3月6日
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
南洋理工大学,深度学习推荐系统综述
专知会员服务
174+阅读 · 2019年10月14日
深度学习视频中多目标跟踪:论文综述
专知会员服务
92+阅读 · 2019年10月13日
神经网络与深度学习,复旦大学邱锡鹏老师
专知会员服务
117+阅读 · 2019年9月24日
推荐系统中的矩阵分解技术
AINLP
9+阅读 · 2018年12月24日
干货 | 用 Keras 实现图书推荐系统
AI科技评论
11+阅读 · 2018年12月15日
推荐系统概述
Python开发者
11+阅读 · 2018年9月27日
深度学习在推荐系统中的应用综述(最全)
七月在线实验室
17+阅读 · 2018年5月5日
深度学习在推荐系统上的应用
架构文摘
13+阅读 · 2018年2月22日
深度学习在文本分类中的应用
AI研习社
13+阅读 · 2018年1月7日
【推荐系统】融合 MF 和 RNN 的电影推荐系统
产业智能官
23+阅读 · 2018年1月4日
融合 MF 和 RNN 的电影推荐系统
PaperWeekly
7+阅读 · 2017年12月28日
【深度学习】深度学习在美团点评的应用
产业智能官
3+阅读 · 2017年11月1日
Arxiv
5+阅读 · 2019年10月11日
Arxiv
19+阅读 · 2018年3月28日
Arxiv
12+阅读 · 2018年1月28日
Arxiv
5+阅读 · 2017年7月23日
VIP会员
相关VIP内容
深度学习自然语言处理概述,216页ppt,Jindřich Helcl
专知会员服务
212+阅读 · 2020年4月26日
Yann Lecun 纽约大学《深度学习(PyTorch)》课程(2020)PPT
专知会员服务
179+阅读 · 2020年3月16日
【新加坡国立大学】深度学习时代数据库:挑战与机会
专知会员服务
33+阅读 · 2020年3月6日
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
南洋理工大学,深度学习推荐系统综述
专知会员服务
174+阅读 · 2019年10月14日
深度学习视频中多目标跟踪:论文综述
专知会员服务
92+阅读 · 2019年10月13日
神经网络与深度学习,复旦大学邱锡鹏老师
专知会员服务
117+阅读 · 2019年9月24日
相关资讯
推荐系统中的矩阵分解技术
AINLP
9+阅读 · 2018年12月24日
干货 | 用 Keras 实现图书推荐系统
AI科技评论
11+阅读 · 2018年12月15日
推荐系统概述
Python开发者
11+阅读 · 2018年9月27日
深度学习在推荐系统中的应用综述(最全)
七月在线实验室
17+阅读 · 2018年5月5日
深度学习在推荐系统上的应用
架构文摘
13+阅读 · 2018年2月22日
深度学习在文本分类中的应用
AI研习社
13+阅读 · 2018年1月7日
【推荐系统】融合 MF 和 RNN 的电影推荐系统
产业智能官
23+阅读 · 2018年1月4日
融合 MF 和 RNN 的电影推荐系统
PaperWeekly
7+阅读 · 2017年12月28日
【深度学习】深度学习在美团点评的应用
产业智能官
3+阅读 · 2017年11月1日
Top
微信扫码咨询专知VIP会员