多任务建模之PPNet

这篇具有很好参考价值的文章主要介绍了多任务建模之PPNet。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

PPNet的网络结构由基础的DNN结构和Gate NN结构组层。两种结构的融合方式是LHUC(Learning Hidden Unit Contributions)结构。像快手、字节等公司的推荐模型都是用了该结构。

所以,学习PPNet之前,必须先清楚LHUC结构。简单讲,就是将重要的一些bias特征embedding,作为其他所有特征的"gate"——即特征的重要性embedding,和特征原始embedding 做hadamard 积,生成加权后的embedding,后面就是mlp层。详细可以看下大佬的这篇文章先入为主:将先验知识注入推荐模型 - 知乎,写得非常清楚。

ppnet,数据挖掘,深度学习,算法,多任务建模,ppnet



 了解LHUC结构后,就比较容易能理解PPNet(Parameter Personalized Net)结构。将LHUC的结构应用到每一层网络结构(embedding层和mlp层)。其中Gate NN 是一层relu,一层sigmoid(为什么是sigmoid,因为是当作特征重要性是用)。所有层的Gate NN的输入都是bias embedding和其他所有特征的embedding。不同的是,因为需要做hadamard 积,所以,每一层Gate NN的输出维度是和左侧对应层的维度一致。具体的训练过程,以下几点需要注意:

  • 除bias embedding外,其他所有embedding特征,即绿色框的embedding,其梯度更新不受Gate NN的反转梯度更新。其参数只会受左侧塔(橘色的)的反向梯度更新。
  • Gate NN是一个2层神经网络,其中第二层网络的激活函数是2 * sigmoid,目的是约束其输出的每一项在[0, 2]范围内,并且默认值为1。当Gate NN输出是默认值时,PPNet同左侧部分网络是等价的。
  • 左侧塔是辅助网络,个人理解主要是学习embedding,右侧塔是最终上线serving的塔。

ppnet,数据挖掘,深度学习,算法,多任务建模,ppnet

 技术日新月异,欢迎大佬多多点评沟通。

 文章来源地址https://www.toymoban.com/news/detail-647692.html

到了这里,关于多任务建模之PPNet的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

原文地址:https://blog.csdn.net/weixin_38381682/article/details/127248171

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包