论文笔记 | DLRS2016 | Wide & Deep Learning for Recommender Systems

wide-deep-title.png

论文地址:https://arxiv.org/abs/1606.07792

一 为什么读这篇

自从打算重新搞推荐以来,看了各种各样的资料,收集了一堆TODO论文,发现这篇出现频率十分之高,是深度学习与推荐系统相结合的必读论文之一,因为很多新出的模型都是在这个架构的基础上进行迭代的。而且有google的实际产品背书,工程上大概率是实用的。

二 截止阅读时这篇论文的引用次数

2019.5.27 396次。本篇算是推荐领域里的经典论文,引用次数都不过比CV里那些动辄引用上千的paper,确实有差距,不过也从侧面说明CV更能灌水?

三 相关背景介绍

15年12月挂到arXiv上,中了16年的ECCV。一作刘伟是北卡罗来纳大学教堂山分校的PHD,也是GoogLeNet的的二作。其他几个作者都有Google背景,包括Szegedy大神,所以SSD差不多算是Google系的。本篇提出时间比Faster R-CNN和YOLO v1晚半年。

16年6月挂到arXiv上,中了16年ACM下的Deep Learning for Recommender Systems Workshop。有16个共同作者。。。

一作Heng-Tze Cheng是个台湾小哥,13年CMU博士毕业,毕业后就去G家了。本篇提出时间比FNN晚半年,比DeepFM,DIN,AFM,NFM,DCN早差不多一年。

四 关键词

Wide & Deep

memorization

generalization

cross-product feature

五 论文的主要贡献

提出Wide & Deep架构,挖了一个好坑,等着后续各种模型来填

六 详细解读

0 摘要

具有非线性特征变换的广义线性模型被广泛应用于具有稀疏输入的大规模回归和分类问题。通过a wide set of交叉特征变换来记住特征交互是有效且可解释的,然而泛化则需要更多的特征工程工作;与此相反,不用过多的特征工程,深度神经网络可以通过对稀疏特征学习到的低维稠密嵌入来更好地泛化到未曾见过的特征组合。然而,当用户物品交互行为是稀疏且高秩时,具有嵌入的深度神经网络会过度泛化并推荐不太相关的物品。本文提出的Wide & Deep学习统一训练宽的线性模型和深度神经网络,这样就结合了记忆(memorization)与泛化(generalization)的优势。用有超过10亿用户行为,百万apps上的Google Play上进行试验。

1 介绍

推荐系统可以被视为是搜索排序系统,其输入query是用户和上下文信息,输出是排好序的物品列表。记忆(memorization)定义为学习与物品或特征频繁共现的东西,并利用历史数据中可用的相关性。然而泛化(generalization)是基于相关的传递性,并探索过去从未或很少发生的新特征组合。基于记忆的推荐通常更与主题相关,并且与用户已经有过行为的物品直接相关。泛化倾向于改进推荐物品的多样性。

广义线性模型的优势是简单,可扩展,可解释。记忆通过使用在稀疏特征上的叉积变换来实现,泛化通过使用更粗粒度的特征来实现,但是手动特征工程是必不可少的。叉积变换的一个限制是无法泛化出没出现在训练样本中的query-item特征对。

基于嵌入的模型(FM,DNN)通过学习低维稠密嵌入向量来泛化到之前未见过的query-item特征对,然而当潜在的query-item矩阵稀疏并有很高的秩时(例如用户有特殊的偏好,或者物品有狭隘的吸引力),很难学习有效的低维表示。在这种情况下,绝大多数query-item对应该没有交互,然而稠密嵌入将对所有的query-item对进行非零值预测,因此会过度泛化并作出不太相关的推荐。从另一方面讲,使用叉积特征变换的广义线性模型能够用更少的参数记住这些例外规则。

wide-deep-fig1.png

本文主要贡献:

1 Wide & Deep框架,联合训练有嵌入的前向神经网络和有特征变换的线性模型

2 在Google Play上实现并评估Wide & Deep

3 在TensorFlow上开源了高阶API的实现

2 推荐系统概述

wide-deep-fig2.png

query通常包括不同的用户和上下文特征。

本篇的Wide & Deep聚焦于排序模型那块。

3 Wide & Deep学习

3.1 Wide部分

特征集合包括原始输入特征和变换特征,其中最重要的变换的叉积变换,定义如下:
\phi_{k}(\mathbf{x})=\prod_{i=1}^{d} x_{i}^{c_{k i}} \quad c_{k i} \in\{0,1\}
这样捕获了二元特征间的交互,并为广义线性模型增加了非线性。

3.2 Deep部分

将稀疏,高维的分类特征,首先转化为低维,稠密的实数向量,即嵌入向量,嵌入维度通常是10到100。

3.3 联合训练Wide & Deep模型

联合训练和Ensemble的不同,联合训练的wide部分只需要通过少量的叉积特征变换来补充deep部分的不足,而不用全尺寸的wide模型。本文用FTRL(Follow-the-regularized-leader)优化模型的wide部分,AdaGrad优化深度部分(这为什么??)。
P(Y=1 | \mathbf{x})=\sigma\left(\mathbf{w}_{w i d e}^{T}[\mathbf{x}, \phi(\mathbf{x})]+\mathbf{w}_{d e e p}^{T} a^{\left(l_{f}\right)}+b\right)

4 系统实现

wide-deep-fig3.png

4.1 数据生成

Vocabularies,用来将分类特征字符串映射为整数IDs。连续实数特征归一化到[0, 1]。

4.2 模型训练

wide-deep-fig4.png

wide部分由用户安装的apps和曝光的apps的叉积变换组成。对于deep部分,每个分类特征学习32维的嵌入向量。模型在5000亿的样本上训练。。。

4.3 模型服务

为了优化速度(每个请求10ms内),没有用一个batch,而是用多线程并行跑多个小batch。

5 实验结果

5.1 APP获取

AB试验做了3周,控制组为LR,实验组为Wide & Deep,两者特征一样。

wide-deep-table1.png

5.2 服务性能

在峰值时,每秒为1000w apps打分。这里有个trick就是用多线程把大batch拆为几个小batch。

wide-deep-table2.png

6 相关工作

本文受FM的启发,不同的是把FM的点积用神经网络的嵌入代替。剩下的部分就是硬凑。。

七 小结

还是看原文爽,仅仅读了摘要和介绍部分,就明白了模型是为什么要这么做。这也是看原文的好处,背景介绍的非常清楚,会告诉你为什么有这个idea。感觉推荐和CV的风格差异还是挺大的,貌似推荐的要易读一点?也可能是这篇相对易懂,内容很短,只有4页,看完后懂了为什么要这么多作者,合着是把一个项目组的人都拉进来了。。。另外从最后的实验结果来看,提升并没有特别的高,看来模型侧的改进真没有想象中那么有效。

素质四连

要解决什么问题

LR泛化能力不足,DNN泛化能力过强导致的无关推荐

用了什么方法解决

结合LR和DNN

效果如何

相比LR,AUC提升不多,但线上提升较多

还存在什么问题

本篇只是搭了架构,还有各种花式技巧,魔改网络结构没有用上

八 补充

一作在17年TensorFlow峰会上的视频

google ai官博

看Google如何实现Wide & Deep模型(1) 2.1 2.2 3

用NumPy手工打造 Wide & Deep

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容