其实wide&deep模型本身的结构是非常简单的,对于有点机器学习基础和深度学习基础的人来说都非常的容易看懂,但是如何根据自己的场景去选择那些特征放在Wide部分,哪些特征放在Deep部分就需要理解这篇论文提出者当时对于设计该模型不同结构时的意图了,所以这也是用好这个模型的一个前提。 如何理解Wide部分有利于增强模型的“...
Wide&Deep模型把单输入层的Wide部分与由Embedding层和多隐层组成的Deep部分连接起来,一起输入最终的输出层。单层的Wide部分善于处理大量稀疏的id类特征;Deep部分利用神经网络表达能力强的特点,进行深层的特征交叉,挖掘藏在特征背后的数据模式。最终,利用逻辑回归模型,输出层将Wide部分和Deep部分组合起来,形成统一的模型。
最左边是Wide模型,最右边是Deep模型。最终Wide & Deep 模型将LR和DNN的输出进行加和并通过一个sigmoid函数: 上式中,x是代表原始的数据特征;ϕ(x)代表人工设置的交叉特征;a(lf)代表DNN模型的输出,lf代表第lf层的神经网络;b代表偏置项。 原始特征x x=[x1,x2,...,xd]是一个d维的向量,代表一个样本的输入。
# Wide&Deep 模型的wide部分及Deep部分的特征选择,应该根据实际的业务场景去确定哪些特征应该放在Wide部分,哪些特征应该放在Deep部分defWideNDeep(linear_feature_columns,dnn_feature_columns):# 构建输入层,即所有特征对应的Input()层,这里使用字典的形式返回,方便后续构建模型dense_input_dict,sparse_input_dict=build_...
wide_deep模型理解 分类问题模型一方面需要适配绝大部分样本,学习推演规律, 另一方面对于少数特例也需要有记忆能力. 神经网络和树模型对于连续型特征具有极强的拟合能力作为泛化部分, 线性模型LR和FM对离散特征交叉项进行学习作为记忆部分.也可以直接对预测的两端进行交叉组合输入给模型记忆,比如以用户的已购买商品序列做mu...
进行筛选和检索结束之后,最后再调用Wide & Deep模型进行CTR预估,根据预测出来的CTR对这些APP进行排序。在这篇paper当中我们同样忽略其他技术细节,只关注与Wide & Deep模型的实现。Wide & Deep原理 首先我们来看下业内的常用的模型的结构图:这张图源于论文,从左到右分别展示了Wide模型,Wide & Deep模型以及Deep...
2.3、Deep模型 Deep模型如上图中的右侧的图所示,实际上,Deep模型是一个前馈神经网络。深度神经网络模型通常需要的输入是连续的稠密特征,对于稀疏,高维的类别特征,通常首先将其转换为低维的向量,这个过程也成为embedding。 在训练的时候,首先随机初始化embedding向量,并在模型的训练过程中逐渐修改该向量的值,即将向量作为...
原理 论文来源:《Wide & Deep Learning for Recommender Systems》 可见wide & Deep是专门为推荐系统点击率预估而设计的一个种联合模型。 1、记忆与泛化 记忆可以宽松定义为学习商品或者特征的共同出现频繁程度和利用历史数据中可用的相关性。 泛化是基于相关性的传递性,探索从未出现或者极少出现过的新的特征组合。
1.why(模型设计背后的原理) 2.how(具体怎么设计,如何应用) 3.discussion(模型讨论) Wide&Deep why Memorization 和 Generalization 假如你设计了一个外卖推荐系统gugu,用户睡觉醒来需要点个外卖,推荐系统推荐给用户了一个烤肉饭,用户如果购买了就标记为1,否则为0(说明不是一个好的推荐)。点击率预估就是衡量推荐系统...