深度学习推荐模型-Wide&Deep

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,5000CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介: Wide部分主要作用是让模型具备较强的“记忆能力”;Deep部分的主要作用是让模型具有“泛化能力”。

ffe68336224a352089bfa7da456cb76e_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxX3h1YW5zaHVhbmc=,size_16,color_FFFFFF,t_70.png

Wide & Deep介绍


Wide部分主要作用是让模型具备较强的“记忆能力”;Deep部分的主要作用是让模型具有“泛化能力”。


“记忆能力”:模型直接学习并利用历史数据中的物品或者强特征的“共现频率”的能力。一般来说,协同过滤、逻辑回归等简单模型具有较强的“记忆能力”。这类模型结构简单,没有过多的特征交叉,原始数据往往可以直接影响推荐结果,产生类似于”若点击过A则推荐B“这类规则式的推荐,相当于模型直接记住了历史数据的分布特点,并利用这些记忆进行推荐。多层神经网络特征会被多层处理,不断与其他特征交叉,使得模型对原始强特征的记忆反而不如简单模型。


“泛化能力”:模型传递特征的相关性,以及发觉稀疏甚至从未出现过的稀有特征与最终标签相关性的能力。矩阵分解比协同过滤的泛化能力强,因为MF引入了隐向量,使得数据稀少的用户或者物品也能生成隐向量,从而获得由数据支撑的推荐得分,这就是典型的将全局数据传递到稀有物品上,从而提高泛化能力。再如,深度神经网络通过特征次组合,可以发掘数据中潜在的模式,即使非常稀疏的特征向量输入,也能得到较稳定平滑的推荐概率。


Wide & Deep Model

Wide&Deep由浅层(或单层)的Wide部分神经网络和深层的Deep部分多层神经网络组成,输出层采用softmax或logistics regression综合Wide和Deep部分的输出。

image.png

Memorization:

之前大规模稀疏输入的处理是:通过线性模型 + 特征交叉。所带来的Memorization以及记忆能力非常有效和可解释。但是Generalization(泛化能力)需要更多的人工特征工程。


Generalization:

相比之下,DNN几乎不需要特征工程。通过对低纬度的dense embedding进行组合可以学习到更深层次的隐藏特征。但是,缺点是有点over-generalize(过度泛化)。推荐系统中表现为:会给用户推荐不是那么相关的物品,尤其是user-item矩阵比较稀疏并且是high-rank(高秩矩阵)


两者区别:

Memorization趋向于更加保守,推荐用户之前有过行为的items。相比之下,generalization更加趋向于提高推荐系统的多样性(diversity)。


Wide & Deep:

Wide & Deep包括两部分:线性模型 + DNN部分。结合上面两者的优点,平衡memorization和generalization。

原因:综合memorization和generalizatio的优点,服务于推荐系统。相比于wide-only和deep-only的模型,wide & deep提升显著。


Wide&Deep模型进化-Deep & Cross模型

利用Cross Net代替Wide部分,增加特征交叉力度


目录
相关文章
|
24天前
|
机器学习/深度学习 数据采集 TensorFlow
使用Python实现智能食品市场预测的深度学习模型
使用Python实现智能食品市场预测的深度学习模型
63 5
|
18天前
|
机器学习/深度学习 数据采集 运维
使用 Python 实现深度学习模型:智能食品生产线优化
使用 Python 实现深度学习模型:智能食品生产线优化
51 13
|
15天前
|
机器学习/深度学习 数据采集 数据可视化
TensorFlow,一款由谷歌开发的开源深度学习框架,详细讲解了使用 TensorFlow 构建深度学习模型的步骤
本文介绍了 TensorFlow,一款由谷歌开发的开源深度学习框架,详细讲解了使用 TensorFlow 构建深度学习模型的步骤,包括数据准备、模型定义、损失函数与优化器选择、模型训练与评估、模型保存与部署,并展示了构建全连接神经网络的具体示例。此外,还探讨了 TensorFlow 的高级特性,如自动微分、模型可视化和分布式训练,以及其在未来的发展前景。
38 5
|
24天前
|
机器学习/深度学习 人工智能 自然语言处理
探索深度学习中的Transformer模型
探索深度学习中的Transformer模型
30 1
|
26天前
|
机器学习/深度学习 算法 开发者
探索深度学习中的优化器选择对模型性能的影响
在深度学习领域,优化器的选择对于模型训练的效果具有决定性作用。本文通过对比分析不同优化器的工作原理及其在实际应用中的表现,探讨了如何根据具体任务选择合适的优化器以提高模型性能。文章首先概述了几种常见的优化算法,包括梯度下降法、随机梯度下降法(SGD)、动量法、AdaGrad、RMSProp和Adam等;然后,通过实验验证了这些优化器在不同数据集上训练神经网络时的效率与准确性差异;最后,提出了一些基于经验的规则帮助开发者更好地做出选择。
|
25天前
|
机器学习/深度学习 算法 数据可视化
使用Python实现深度学习模型:智能食品配送优化
使用Python实现深度学习模型:智能食品配送优化
41 2
|
24天前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
68 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
24天前
|
机器学习/深度学习 人工智能 算法
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
蔬菜识别系统,本系统使用Python作为主要编程语言,通过收集了8种常见的蔬菜图像数据集('土豆', '大白菜', '大葱', '莲藕', '菠菜', '西红柿', '韭菜', '黄瓜'),然后基于TensorFlow搭建卷积神经网络算法模型,通过多轮迭代训练最后得到一个识别精度较高的模型文件。在使用Django开发web网页端操作界面,实现用户上传一张蔬菜图片识别其名称。
68 0
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
|
11天前
|
机器学习/深度学习 数据采集 供应链
使用Python实现深度学习模型:智能食品市场分析
使用Python实现深度学习模型:智能食品市场分析
29 0
|
15天前
|
机器学习/深度学习 数据采集 人工智能
探索人工智能中的深度学习模型优化策略
探索人工智能中的深度学习模型优化策略

热门文章

最新文章