多任务学习——KDD 2018MMoE
Posted 卓寿杰_SoulJoy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多任务学习——KDD 2018MMoE相关的知识,希望对你有一定的参考价值。
多任务模型通过学习不同任务的联系和差异,可提高每个任务的学习效率和质量。
多任务学习的的框架广泛采用 shared-bottom 的结构,不同任务间共用底部的隐层。这种结构本质上可以减少过拟合的风险,但是效果上可能受到任务差异和数据分布带来的影响。也有一些其他结构,比如两个任务的参数不共用,但是通过对不同任务的参数增加 L2 范数的限制;也有一些对每个任务分别学习一套隐层然后学习所有隐层的组合。和 shared-bottom 结构相比,这些模型对增加了针对任务的特定参数,在任务差异会影响公共参数的情况下对最终效果有提升。缺点就是模型增加了参数量所以需要更大的数据量来训练模型,而且模型更复杂并不利于在真实生产环境中实际部署使用。
如图,a) 是最原始的多任务学习模型
b) 是加入单门(one gate)的MoE layer的多任务学习模型,
其中:
k 表示k个任务;
n 表示n个expert network
c) 是文章提出的MMOE模型,将base的shared bottom换成了MoE layer,并对每个任务都加gate:
以上是关于多任务学习——KDD 2018MMoE的主要内容,如果未能解决你的问题,请参考以下文章
推荐系统(十五)多任务学习:谷歌MMoE(Multi-gate Mixture-of-Experts )
推荐系统(十五)多任务学习:谷歌MMoE(Multi-gate Mixture-of-Experts )
推荐系统(十五)多任务学习:谷歌MMoE(Multi-gate Mixture-of-Experts )