镇江品牌网站建设,做网站专业,网站建设中应该注意什么,宿州信息网官网介绍一些多任务学习模型了解是如何处理多任务分支的。
ESSM, Entire Space Multi-Task Model
阿里提出的ESSM全称Entire Space Multi-Task Model#xff0c;全样本空间的多任务模型#xff0c;有效地解决了CVR建模#xff08;转化率预估#xff09;中存在的两个非常重要…介绍一些多任务学习模型了解是如何处理多任务分支的。
ESSM, Entire Space Multi-Task Model
阿里提出的ESSM全称Entire Space Multi-Task Model全样本空间的多任务模型有效地解决了CVR建模转化率预估中存在的两个非常重要的问题样本选择偏差SSBsample selection bias和数据稀疏。 ESSM网络结构 ESMM的整体网络结构如图所示能够看到ESMM的两个特点
CTR与CVR这两个塔共享底座embedding。 因此CVR样本数量太少了也就是存在开头提到的两个问题中的数据稀疏问题所以很难充分训练学到好的embedding表达但是CTR样本很多这样共享底座embedding有点transfer learning的味道帮助CVR的embedding向量训练的更充分更准确。CVR这个塔其实个中间变量他没有自己的损失函数也就意味着在训练期间没有明确的监督信号在ESMM训练期间主要训练的是CTR和CTCVR这两个任务这一点从ESMM的loss函数设计也能看出来。 MMoE, Multi-gate Mxture-of-Experts
谷歌的MMoE全称Multi-gate Mixture-of-Experts。ESMM模型中两个塔有明确的依赖关系性能显著。但如果这些塔之间关联性很小时性能会很差甚至出现【跷跷板】现象即一个task的性能提升是通过损害另一个task性能作为代价换来的。 MMoE网络结构 (a)展示了传统的MTL模型结构即多个task共享底座(一般都是embedding向量)(b)是论文中提到的一个gate的Mixture-of-Experts模型结构(c)则是论文中的MMoE模型结构。 MMoE模型细节版 PLE, Progressive Layered Extraction model
腾讯的PLE模型全称Progressive Layered Extraction model。缓解了多任务学习的两大问题负迁移negative transfer现象和跷跷板seesaw phenomenon。
负迁移negative transferMTL提出来的目的是为了不同任务尤其是数据量较少的任务可以借助transfer learning通过共享embedding当然你也可以不仅共享embedding再往上共享基层全连接网络等等这些很常见的操作。但当两个任务之间的相关性很弱或者非常复杂时往往发生负迁移即共享之后效果反而很差。跷跷板现象当两个task之间相关性很弱或者很复杂时往往出现的现象是一个task性能的提升是通过损害另一个task的性能做到的。 PLE网络结构 相比MMoEPLE做了较大的创新MMoE把不同task通过gate网络共享相同的expert而PLE中则把expert分为两种共享的expert即上图中的experts Shared和每个task单独的experttask-specific experts。因此这种设计既保留了transfer learning通过共享expert能力又能够避免有害参数的干扰避免negative transfer。 PLE简化版 DSSM, Deep Structured Semantic Models
微软的DSSM模型全称Deep Structured Semantic Models。 推荐领域常用DSSM模型结构 模型结构非常简单主要包括两部分user侧一个塔item侧一个塔。user侧特征和item侧特征分别经过各自的DNN一般情况下两个DNN结构是一样的后得到user embedding和item embedding需要保证输出维度一样也就是最后一层全连接层隐藏单元个数相同需要保证user embedding和item embedding的维度相同因为下一步要做相似度计算常用内积或者cosine。损失函数部分则是常用的二分类交叉熵损失y_true为真实label 0或者1y_pred为相似度结果。
DSSM模型的缺点无法使用user#item的交叉特征。
GateNet
新浪微博的GateNet。依据Gate网络施加位置的不同分为了两种类型embedding层GateFeature Embedding Gate和 隐藏层GateHidden Gate。
embedding层Gate就是把Gate网络施加在embedding层隐藏层Gate就是把Gate网络施加在MLP的隐藏层.
两种gate都具体分为两种bit-wise和vector-wise。bit-wise就是每一个特征的embedding向量的每一个元素bit都会有一个对应的Gate参数而vector-wise则是一个embedding向量只有一个Gate参数。假设样本有两个特征每个特征embedding维度取3用图来形象的对比下bit-wise和vector-wise的gate的区别 论文中关于gate网络参数是否共享提出了两个概念
field private 就是每个特征都有自己的一个gate意味着gate数量等于特征个数这些gate之间参数不共享都是独立的。图1、图2中gate的方式就是这种。field sharing 与field private相反不同特征共享一个gate只需要一个gate即可。优点就是参数大大减少缺点也是因为参数大大减少了性能不如field private。
论文中给出的实验表明field private方式的模型效果要好于field sharing方式。
问题1gate参数field private方式与field sharing方式那个效果好实验结果表明field private方式的模型效果优于field sharing方式。问题2gate施加方式 bit-wise与vector-wise哪个效果好在Criteo数据集上bit-wise的效果比vector-wise的好但在ICME数据集上得不到这样的结论。问题3gate施加在embedding层和隐藏层哪个效果好论文中没有给出结论但从给出的数据来看在隐藏层的比在embedding层效果好。此外两种方式都用的话相比较只用一种效果提升不大。问题4gate网络用哪个激活函数好embedding层是linear隐藏层是tanh。 GemNN, Gating-Enhanced Multi-Task Neural Networks
百度的GemNN全称Gating-Enhanced Multi-Task Neural Networks。 GemNN中gate 关于GemNN中gate如图所示有三个显著的特点
gate的位置在embedding层到MLP全连接层之间。没有对每个feature单独做gate而是把所有feature拼接(concatenation)后再做gate。gate的方式是bit-wise的。 链路上相同的特征embedding会被shared的这里的shared不是训练时share而是类似于预训练热启。结合图来说就是user-ad ranking模型、ad-mt matching模型、user-ad-mt模型一些公共的特征会被共享。 参考
推荐系统十四多任务学习阿里ESMM完整空间多任务模型_essm属于多场景吗?-CSDN博客
推荐系统十五多任务学习谷歌MMoEMulti-gate Mixture-of-Experts -CSDN博客
推荐系统十六多任务学习腾讯PLE模型Progressive Layered Extraction model_天泽28的博客-CSDN博客
推荐系统十七双塔模型微软DSSM模型Deep Structured Semantic Models_双塔模型英文-CSDN博客
推荐系统十八Gate网络一新浪微博GateNet-CSDN博客
推荐系统十九Gate网络二百度GemNNGating-Enhanced Multi-Task Neural Networks-CSDN博客