【推荐系统论文精读系列】(十)--Wide&Deep Learning for Recommender Systems

简介: 具有非线性特征转化能力的广义线性模型被广泛用于大规模的分类和回归问题,对于那些输入数据是极度稀疏的情况下。通过使用交叉积获得的记忆交互特征是有效的而且具有可解释性,然后这种的泛化能力需要更多的特征工程努力。在进行少量的特征工程的情况下,深度神经网络可以泛化更多隐式的特征组合,通过从Sparse特征中学得低维的Embedding向量。可是,深度神经网络有个问题就是由于网络过深,会导致过度泛化数据。

@TOC


论文名称:Wide & Deep Learning for Recommender Systems
原文地址:Wide&Deep


⚡本系列历史文章⚡


【推荐系统论文精读系列】(一)--Amazon.com Recommendations
【推荐系统论文精读系列】(二)--Factorization Machines
【推荐系统论文精读系列】(三)--Matrix Factorization Techniques For Recommender Systems
【推荐系统论文精读系列】(四)--Practical Lessons from Predicting Clicks on Ads at Facebook
【推荐系统论文精读系列】(五)--Neural Collaborative Filtering
【推荐系统论文精读系列】(六)--Field-aware Factorization Machines for CTR Prediction
【推荐系统论文精读系列】(七)--AutoRec Autoencoders Meet Collaborative Filtering
【推荐系统论文精读系列】(八)--Deep Crossing:Web-Scale Modeling without Manually Crafted Combinatorial Features
【推荐系统论文精读系列】(九)--Product-based Neural Networks for User Response Prediction
【推荐系统论文精读系列】(十)--Wide&Deep Learning for Recommender Systems
【推荐系统论文精读系列】(十一)--DeepFM A Factorization-Machine based Neural Network for CTR Prediction
【推荐系统论文精读系列】(十二)--Neural Factorization Machines for Sparse Predictive Analytics


一、摘要


具有非线性特征转化能力的广义线性模型被广泛用于大规模的分类和回归问题,对于那些输入数据是极度稀疏的情况下。通过使用交叉积获得的记忆交互特征是有效的而且具有可解释性,然后这种的泛化能力需要更多的特征工程努力。在进行少量的特征工程的情况下,深度神经网络可以泛化更多隐式的特征组合,通过从Sparse特征中学得低维的Embedding向量。可是,深度神经网络有个问题就是由于网络过深,会导致过度泛化数据。


本篇论文,作者提出了一个新型网络结构,Wide & Deep learning,该模型的特点就是能够共同的学习线性模型和深度神经网络,它能够结合记忆化和泛化两个优点。


作者将这个网络结构投入到了实际生产中,平且评估它使用谷歌商店的推荐系统平台。


二、介绍


推荐系统可以看成是一个搜索排序系统,输入是一个带有用户和上下文信息的请求,然后返回的是一个排序的物品列表。给定一个请求,推荐系统的任务就是从数据库中找到相关的物品,然后按照某种业务需求,将这些物品进行排序,例如点击率或者购买量。


推荐系统面临的挑战和搜索排序是非常相似的,都是为了实现记忆化和泛化能力。


记忆化可以被简单的定义为学习特征的共现频率,可以理解为学习某些特征组合对标签的影响,如果某些特征出现的频率非常高,那么一旦在遇到这个特征组合,那么就认为该样例对应的标签极大程度和之前那些组合对应的标签一致。


泛化是基于多样性来讲的,去探索新的特征组合在过去从未见过或者很少出现的。


基于Embedding的模型,例如FMs或者是深度神经网络能够泛化先前为观察到的特征组合通过为每条搜索学习到一个低维稠密的向量。可是,它是非常困难去学习到有效的低维特征当矩阵是极度稀疏。这种情况下很多用户和物品没有交互导致模型学习起来十分困难。


本篇主要论述:


  • Wide&Deep learning学习框架结合了线性模型和深度学习模型
  • 将新型模型结构投入到Google Play实验测评
  • 我们开源了这个网络结构使用TensorFlow


尽管这个想法是简单的,但是在模型训练和线上服务器提供服务阶段我们需要更多努力去满足速度要求。


三、推荐系统综述



一个用户的请求Query包括不同的用户和上下文特征,当一个用户访问app商店时就会产生。这个推荐系统就会返回一系列的app(也被叫做impressions)。这些用户的行为和query和impression将会被写入日志中作为训练数据喂给学习器。


因为在数据库中存在几百万的app,所以它是非常棘手的去为每个app针对每个query进行计算评分在延迟需求时间内(10毫秒内)。因此,第一步通常是要进行检索。检索系统会返回一个小的物品列表,这些物品能够匹配用户,通过使用不同的特征,通常是机器学习模型或者是人工定义的规则。在减少了物品候选池后,排序系统会为所有待返回的物品计算评分。


四、Wide&Deep学习



4.1 Wide部分


wide部分就是简单的线性模型,

网络异常,图片无法展示
|
,特征集包括未加工的输入特征和转换特征,其中最重要的转换特征就是使用了交叉积转换的:


网络异常,图片无法展示
|


4.2 Deep部分


Deep部分是一个前馈神经网络,对于分类特征,这些特征都会被转化成一个低维的稠密Embedding向量,Embedding嵌入的维度通常为10-100维,Embedding向量初始时会随机初始化,然后模型训练通过最小化损失函数。


4.3 联合训练 Wide&Deep Model


wide部分和deep部分被结合到一起通过使用一个权重对于它们输出的对数几率作为最终的预测,通常是使用逻辑回归损失函数联合训练。注意到有个明显的区别在联合学习和集成学习。


对于集成学习,独立的模型会被分别的训练,彼此之间不影响,并且它们只有在推断使其才会被结合,在训练时候不会结合。


相反,联合训练会同时训练所有模型的参数。


联合学习通过反向传播进行更新参数,使用mini-batch stochastic进行优化,我们使用的是带有L1正则化的FTRL算法,而Deep部分使用的是AdaGrad进行优化。


Preference


[1] J. Duchi, E. Hazan, and Y. Singer. Adaptive subgradient methods for online learning and stochastic optimization. Journal of Machine Learning Research, 12:2121–2159, July 2011.


[2] K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for image recognition. Proc. IEEE Conference on Computer Vision and Pattern Recognition, 2016.


[3] H. B. McMahan. Follow-the-regularized-leader and mirror descent: Equivalence theorems and l1 regularization. In Proc. AISTATS, 2011.


[4] T. Mikolov, A. Deoras, D. Povey, L. Burget, and J. H. Cernocky. Strategies for training large scale neural network language models. In IEEE Automatic Speech Recognition & Understanding Workshop, 2011.


[5] S. Rendle. Factorization machines with libFM. ACM Trans. Intell. Syst. Technol., 3(3):57:1–57:22, May 2012.


[6] J. J. Tompson, A. Jain, Y. LeCun, and C. Bregler. Joint training of a convolutional network and a graphical model for human pose estimation. In Z. Ghahramani, M. Welling, C. Cortes, N. D. Lawrence, and K. Q. Weinberger, editors, NIPS, pages 1799–1807. 2014.


[7] H. Wang, N. Wang, and D.-Y. Yeung. Collaborative deep learning for recommender systems. In Proc. KDD, pages 1235–1244, 2015.


[8] B. Yan and G. Chen. AppJoy: Personalized mobile application discovery. In MobiSys, pages 113–126, 2011.

目录
相关文章
|
2月前
|
设计模式 搜索推荐 测试技术
电影推荐系统的设计与实现(论文+系统)_kaic
电影推荐系统的设计与实现(论文+系统)_kaic
|
机器学习/深度学习 搜索推荐 算法
基于协同过滤的旅游推荐系统设计与实现(论文+源码)_kaic
摘要:旅游已经成为了大众节假日放松的主要方式,但因为不熟悉旅游地点带来的选择困难却是不可避免的。随着旅游业的发展旅游行业越来越信息化,用户获取旅游景点信息更加方便。然而,用户在选择旅游目的地时,往往会面对海量的景点信息,这导致他们难以找到适合自己的景点,同时也费时费力 。数量众多的旅游景点存在着信息过载现象且日益严重,用户在网上查找时很难真正搜索到自己感兴趣的旅游景点,对此推荐系统是一种行之有效的解决方法。目前推荐系统已在电影、新闻、音乐、电子商务等方面应用广泛,但在旅游领域还未广泛使用。各大旅游网站多是提供信息查询及订票服务,因此本文将协同过滤算法应用于旅游景点的推荐。
|
SQL 存储 搜索推荐
基于线上考研资讯数据抓取的推荐系统的设计与实现(论文+源码)_kaic
随着互联网的飞速发展,互联网在各行各业的应用迅速成为众多学校关注的焦点。他们利用互联网提供电子商务服务,然后有了“考研信息平台”,这将使学生考研的信息平台更加方便和简单。 对于考研信息平台的设计,大多采用java技术。在设计了一个搭载mysal数据库的全人系统,是根据目前网上考研信息平台的情况,专门开发的,专门根据学生的需要,实现网上考研信息平台的在线管理,并定期进行各种信息存储,进入考研信息平台页面后,即可开始操作主控界面。系统功能包括学生前台:首页、考研信息、申请指南、资料信息、论坛信息、我的、跳转到后台、购物车、客服、管理员:首页、人人中心、研究生信息管理、学生管理、申请指南管理、资料信
|
搜索推荐 安全 关系型数据库
基于知识图谱的个性化学习资源推荐系统的设计与实现(论文+源码)_kaic
最近几年来,伴随着教育信息化、个性化教育和K12之类的新观念提出,一如既往的教育方法向信息化智能化的转变,学生群体都对这种不受时间和地点约束的学习方式有浓厚的兴趣。而现在市面上存在的推荐系统给学生推荐资料时不符合学生个人对知识获取的需求情况,以至于推荐效果差强人意。与此同时,这种信息数字化的新学习方法在给学生群体带来方便的同时,也带来了很多其他的问题,例如信息冗杂、形式让人眼花缭乱的问题,导致系统检索变得难以运行。 解决问题的关键是个性化学习推荐系统,它适合于各式各样的用户产生的各式各样的需求。
|
机器学习/深度学习 人工智能 搜索推荐
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)(3)
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)
230 0
|
机器学习/深度学习 搜索推荐
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)(2)
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)
181 0
|
机器学习/深度学习 搜索推荐 算法
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)(1)
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)
169 0
|
人工智能 搜索推荐 算法
AAAI 2023杰出论文一作分享:新算法加持的大批量学习加速推荐系统训练
AAAI 2023杰出论文一作分享:新算法加持的大批量学习加速推荐系统训练
239 0
|
机器学习/深度学习 搜索推荐 TensorFlow
【推荐系统】TensorFlow复现论文Wide&Deep网络结构
【推荐系统】TensorFlow复现论文Wide&Deep网络结构
148 0
【推荐系统】TensorFlow复现论文Wide&Deep网络结构
|
机器学习/深度学习 资源调度 算法
推荐系统[三]:粗排算法常用模型汇总(集合选择和精准预估),技术发展历史(向量內积,Wide&Deep等模型)以及前沿技术
推荐可分为以下四个流程,分别是召回、粗排、精排以及重排: 1. 召回是源头,在某种意义上决定着整个推荐的天花板; 2. 粗排是初筛,一般不会上复杂模型; 3. 精排是整个推荐环节的重中之重,在特征和模型上都会做的比较复杂; 4. 重排,一般是做打散或满足业务运营的特定强插需求,同样不会使用复杂模型;
推荐系统[三]:粗排算法常用模型汇总(集合选择和精准预估),技术发展历史(向量內积,Wide&Deep等模型)以及前沿技术