Wide&Deep论文简读

531 阅读3分钟

本文解读过程中会参杂自己的理解,按照以下格式进行撰写

  1. 罗列原文内容
  2. 按自己理解解析

希望自己可以思考感受论文中所蕴含的哲学思想,而不是仅仅拆解公式与模型结构。当然也不是所有论文都有哲学思想就是了😋

论文地址:Wide&Deep模型论文

背景

自FM2010年提出以来,深度学习在推荐系统领域逐渐崭露头角,2014年FaceBook发布了GBDT+逻辑回归的经典模型,2016年Youtube发表了经典工业实践论文,同年谷歌发表了本文将要介绍的Wide&Deep模型。在这之后,以Wide&Deep模型为基础,2017年DeepFM、DCN相继出世,自此之后深度学习接过了传统机器学习的接力棒,成为推荐系统主流解决方案。可以说在这个历史发展流程中,Wide&Deep模型起了一个承上启下的作用,论文所提出的模型不仅在当时达到了SOTA,论文中提出的隐式+显式特征交叉结合的方法也在后续模型中被广泛应用,甚至在今天Wide&Deep模型也还是很多公司的Base模型选择。可以说这篇论文开启了推荐系统的深度学习时代。

摘要

原文:

在大规模稀疏数据场景下,线性模型+非线性特征常常被使用。通常推荐系统中有两个主要的需求,一个是Memorization,可以被翻译为记忆性或者特化性,另一个是Generalization泛化性。特化性一般使用外积的方式在Wide模型就可以简单高校地完成特征交叉,泛化性则需要较多的特征工程才能够完成特征交叉。深度神经网络能够隐式、自动地完成泛化性特征交叉,但存在过度泛化的缺点(over-generalize)。因此本文把Wide模型和Deep模型结合起来,在Google PLAY上进行了上线实验,取得了非常不错的效果。

解读:

摘要提出了两个关键字,Memorization和Generalization,其实这两个关键字本质上就是训练样本与实际样本间分布的差异。后续很多论文的工作都是在解决这个问题。Memorization即为针对出现过的样本,能够正确预测的能力,ID类特征及能够有效利用ID类特征的模型能够提高的基本都是Memorization能力。Generalization即为针对没有出现过的样本,正确预测的能力,一些比较泛化的特征比如年龄性别等提升的更多为Generalization能力。这里提了一个很有意思的点,DNN有可能过度泛化,导致在出现过的样本上效果变差,因此结合Wide模型强大的过拟合能力(雾)和DNN强大的泛化能力形成新的模型。

\

简介

  1. 推荐系统本质是输入用户信息及上下文信息,输出Item的排序。
  2. 特化性和泛化性都很重要,特化性容易实现,泛化性较难实现。DNN能够泛化,但容易过度泛化。一个例子:有特殊喜好和nichi item,这类outliner会严重影响模型效果,导致模型无法学习到通用的特征。而线性模型能够用ID类特征以极少参数学习到这类outliner。即线性模型解决了outliner等特例,DNN学习到了通用泛化性。
  3. 特征交叉非常重要,特化性的特征交叉可以简单用外积实现,泛化性特征交叉往往需要专家设计。

\

后续

DNN和LR的结合,官方代码中是计算出两个的logits,然后直接加起来。 LOGITS = linear_logits + dnn_logits github.com/tensorflow/…