[特征工程系列四]Wide&Deep Learning for Recommender Systems

简介:

今天讲下目前在推荐领域非常火的一种特征组合的方式Wide&Deep,这个思路其实是源自GOOGLE的一篇PAPERWide&Deep Learning for RecommenderSystems》,短短的四页但是讲得特别好,非常推荐大家阅读。

 

Ok,我们开始今天关于wide&deep这个方法的介绍,大家一看这个词的组合,肯定觉得很困惑,什么东西是“越宽越深”呢?

 

先来说wide,表示的是generalized的推荐系统,传统的推荐系统都是通过线性算法基于离散特征来做推荐的。Wide推荐通常是这样的:系统通过获得用户的购物日志数据,包括用户点击哪些商品,购买过哪些商品,然后通过one-hot编码的方式构成离散特征或者通过对业务的理解衍生出一些特征,具体的方式在特征工程第三篇文章中有介绍。那这种wide推荐方式有非常多的好处,比如对于大规模的稀疏数据有很好的效果,而且模型的解释性很强。什么叫模型的解释性呢?以逻辑回归为例,每个特征都对应模型中的一个权重值,每个特征的权重值的大小跟这个特征对结果的影响是有关的。那么wide方式同样有很多缺点,比如我们一直强调的,特征衍生需要很多人为操作,需要专家经验,另外这种推荐只对用户操作过的商品有效。

 

接着讲下deep,这里的deep表示的是通过深度学习学习出来的一些向量,这些向量是隐性特征,往往是没有明确可解释性的。这些向量也可以作为特征的一部分参与到训练中。通过deep方式产生的特征会有以下好处,其一可以拟补人为提取特征造成的人力思考维度的限制,试想下一个人可以轻易的思考出二阶乘法的结果,如果是五阶呢?其二这部分特征是深度学习框架自动生成的,无需人力干预。

 

接下来就是wide&deep的融合了,这个思想的精髓就是把wide特征和deep特征和到一起组成训练数据。这里有一点需要强调,在预测的过程中两个模型融合其实是有很多方式的,一种方法是两个模型分别对全量数据进行预测,然后根据权重组合最终的预测结果。另一种方式是widedeep的特征合一,构成一个模型进行预测。Wide&deep选用的是第二种方式:

通过上图可以看到,deep特征和wide特征合起来构成了1200维的模型。

 

那么运用wide&deep思路生成的模型究竟是否能产生推荐系统效果的提升呢,看下这个图:

此案例是论文中提到的基于GOOGLE PLAY真实业务场景的实验数据,在相同数量的测试样本下,只用wide或者只用deep的模型预测AUC效果都弱于使用wide&deep模型的效果。测试的目标是,推荐一个app给用户看用户是否会安装。

 

好啦,介绍到这里,wide&deep的思路的具体工程实现其实已经内置到了tensorflow里面,改天有空再给大家做个案例,今天的理论介绍就到这里,再次推荐大家学习这篇paper~

参考:《Wide & Deep Learning for Recommender Systems

https://arxiv.org/abs/1606.07792


转自:https://mp.weixin.qq.com/s?__biz=MzA4MDI0NDQyOQ%3D%3D&mid=2447500077&idx=1&sn=a5b2a4844ba577a10cb576782e356d64&scene=45#wechat_redirect

目录
相关文章
|
11天前
|
机器学习/深度学习 算法 搜索推荐
Wide和Deep模型
Wide和Deep模型
28 0
|
2月前
|
机器学习/深度学习 算法 TensorFlow
【文献学习】Analysis of Deep Complex-Valued Convolutional Neural Networks for MRI Reconstruction
本文探讨了使用复数卷积神经网络进行MRI图像重建的方法,强调了复数网络在保留相位信息和减少参数数量方面的优势,并通过实验分析了不同的复数激活函数、网络宽度、深度以及结构对模型性能的影响,得出复数模型在MRI重建任务中相对于实数模型具有更优性能的结论。
33 0
【文献学习】Analysis of Deep Complex-Valued Convolutional Neural Networks for MRI Reconstruction
|
5月前
|
Python
[Knowledge Distillation]论文分析:Distilling the Knowledge in a Neural Network
[Knowledge Distillation]论文分析:Distilling the Knowledge in a Neural Network
34 1
|
11月前
|
机器学习/深度学习 算法 数据处理
Stanford 机器学习练习 Part 3 Neural Networks: Representation
从神经网络开始,感觉自己慢慢跟不上课程的节奏了,一些代码好多参考了别人的代码,而且,让我现在单独写也不一定写的出来了。学习就是一件慢慢积累的过程,两年前我学算法的时候,好多算法都完全看不懂,但后来,看的多了,做的多了,有一天就茅塞顿开。所有的困难都是一时的,只要坚持下去,一切问题都会解决的。没忍住发了点鸡汤文。
30 0
|
机器学习/深度学习 人工智能 算法
【5分钟 Paper】Reinforcement Learning with Deep Energy-Based Policies
【5分钟 Paper】Reinforcement Learning with Deep Energy-Based Policies
119 0
|
机器学习/深度学习 资源调度 算法
【RLchina第四讲】Model-Based Reinforcement Learning(上)
【RLchina第四讲】Model-Based Reinforcement Learning(上)
630 0
|
机器学习/深度学习 算法
【RLchina第四讲】Model-Based Reinforcement Learning(下)
【RLchina第四讲】Model-Based Reinforcement Learning(下)
172 0
|
机器学习/深度学习 编解码 算法
【5分钟 Paper】Dueling Network Architectures for Deep Reinforcement Learning
【5分钟 Paper】Dueling Network Architectures for Deep Reinforcement Learning
115 0
|
机器学习/深度学习 移动开发 数据挖掘
Understanding Few-Shot Learning in Computer Vision: What You Need to Know
Few-Shot Learning is a sub-area of machine learning. It’s about classifying new data when you have only a few training samples with supervised information. FSL is a rather young area that needs more research and refinement. As of today, you can use it in CV tasks. A computer vision model can work
175 0
Understanding Few-Shot Learning in Computer Vision: What You Need to Know
|
机器学习/深度学习 搜索推荐 算法
【推荐系统论文精读系列】(三)--Matrix Factorization Techniques For Recommender Systems
现在推荐系统一般是基于两种策略,一种是基于文本过滤的方式,另外一种是协同过滤,而基于文本过滤的方法是创造画像为用户或者物品,说白了就是用一些描述性的特征去描述它们,例如对于一部电影来说,可以为其创造画像电影类型、导演、演员、电影市场、票房等来进行描述,对于用户来说,可以用一些人口统计特征来进行描述。
466 1