• 在模型层面理解,我们在单目标中经常会花费大量的精力“找强特征”和“删冗余特征”输入到模型,提高模型效果。那么切换到MTL时,每个task所需要的“强特”和排斥的“负特”是不同的,MTL的目的就是对每个task 尽可能的找到他们的强特和负特。

  • 在优化层面理解,多个task同时优化模型,某些task会主导了模型的优化过程,淹没了其他task。

  • 从监督信号的角度理解,MTL不仅仅是任务,也是一种数据扩增,相当于每个task多了k-1个监督信号来辅助学习,一些特征可以从其他task学的更好。监督信号的质量和task间的相似性有关,不相似的task反而是噪声。
    #SB、MOE、MMOE

《Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts》Google KDD 2018

share-bottom

多个任务共享相同的底部网络,底部网络输出一个样本的特征向量,每个子任务自己接一个小NN tower。

  • 优点:简单,并且模型过拟合的风险小(因为能同时过拟合多个任务也是不容易的,可以说多个任务互相监督惩罚过拟合);多任务越相关,互相补充效果越好。

  • 缺点:如果任务之间联系不强(矛盾、冲突),那么对底层网络的优化方向可能是相反的。

  • 底层输出:f(x),子任务tower:$h^k_x ,每个子任务输出:,每个子任务输出:,每个子任务输出:y_x^k = h^k_x(f(x)) $

One-gate-MoE

将input分别输入给三个独立的expert(3个nn),同时将input输入到gate,gate输出每个expert被选择的概率,然后将三个expert的输出加权求和,输出给tower:
yk=hk(∑i=1ngifi(x)),y^{k}=h^{k}\left(\sum_{i=1}^{n} g_{i} f_{i}(x)\right) \text { ,} yk=hk(i=1∑n​gi​fi​(x)) ,
其中 g()g()g() 是个多分类模块,且∑i=1ng(x)i=1\sum_{i=1}^{n} g(x)_{i}=1∑i=1n​g(x)i​=1 ,$f_{i}(), i=1, \cdots, n 是n个expertnetwork,k表示k个任务,是n个expert network,k表示k个任务,是n个expertnetwork,k表示k个任务,h^k$表示之后的NN tower。

所以这里相当于给用input当作query,给bottom的输出加了一个attention,看公式换汤不换药,$h^k $在括号外面,这就导致不同的tower输入还是一样的,没有解决task冲突问题。

但是MOE可以解决领域适配的问题,用于cross domain:

MMOE

因此很自然,每个 $h_k $ 不要放在括号外面,不同的 hkh_khk​的输入不同就好了。

所以每个task各分配一个gate,这样gate的作用不再是attention了,而是个性化的为每个task选择重要特征,过滤冗余特征了:
fk(x)=∑i=1ngik(x)fi(x)gk(x)=softmax⁡(Wgkx)\begin{aligned} f^{k}(x) &=\sum_{i=1}^{n} g_{i}^{k}(x) f_{i}(x) \\ \ \ g^{k}(x) &=\operatorname{softmax}\left(W_{gk}x\right) \end{aligned} fk(x)  gk(x)​=i=1∑n​gik​(x)fi​(x)=softmax(Wgk​x)​
其中g就是线性变化+softmax。

这样理论上存在一种情况,gate能给每个task筛选特征,至于模型能不能优化到这个情况,不好说。

实验

【多任务学习】Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts KDD18相关推荐

  1. 深度学习-多任务学习总结

    深度学习中多任务学习的方法和问题总结 为什么要做多任务学习 多任务学习的实现方法 介绍下ESSM 介绍下PLE 为什么要做多任务学习 多任务算法的应用场景还是很广泛的,只要是推荐技术涉及的业务,比如搜 ...

  2. Multi task learning多任务学习背景简介

    2020-06-16 23:22:33 本篇文章将介绍在机器学习中效果比较好的一种模式,多任务学习(Multi task Learning,MTL).已经有一篇机器之心翻译的很好的博文介绍多任务学习了 ...

  3. 多智能体强化学习Multi agent,多任务强化学习Multi task以及多智能体多任务强化学习Multi agent Multi task概述

    概述 在我之前的工作中,我自己总结了一些多智能体强化学习的算法和通俗的理解. 首先,关于题目中提到的这三个家伙,大家首先想到的就是强化学习的五件套: 状态:s 奖励:r 动作值:Q 状态值:V 策略: ...

  4. MMOE 【Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts】阅读

    发于2018年,论文地址:KDD 2018 | Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-o ...

  5. 论文《Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts》

    论文地址:https://dl.acm.org/doi/pdf/10.1145/3219819.3220007 摘要 常用的多任务学习往往对于任务之间的关系比较敏感,论文提出的MMoE将专家混合结构应 ...

  6. #Paper Reading#Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts

    论文题目: Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts 论文地址: ht ...

  7. 论文笔记《Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts》

    论文链接 MMoE 1.摘要 基于神经网络的多任务学习已经在实际场景如推荐系统中有了大规模应用,例如在电影推荐中,除了要给用户推荐他们可能购买或者观看的电影,还要考虑用户后续对这部电影的评价.通过多任 ...

  8. Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts

    前言 这篇是很久以前学习过的文章,但更多的是从使用代码的角度去学习,对文章的写作方法和结构并没有仔细的研究.现在借着做项目的机会,重新回顾这篇文章,并更多的从学习写作的方面进行阅读. 摘要 多任务学习 ...

  9. Modeling Task Relationships in Multi-task Learning withMulti-gate Mixture-of-Experts

    论文链接:https://dl.acm.org/doi/pdf/10.1145/3219819.3220007 许多基于 DNN 的多任务模型对:数据分布.任务之间的差异很敏感,导致并不一定是多任务会 ...

最新文章

  1. 物理机linux无法上网,物理机不能访问虚拟机VMNet8中的Linux
  2. 如何组建开发团队-建立畅通的沟通渠道
  3. 创建磁盘陈列(RAID5)使用经验与原则
  4. 不再内卷!视觉字幕化新任务合集
  5. Android源码解析--AlertDialog及AlertDialog.Builder
  6. 以前折腾的7zip图标
  7. linux 重启命令_如何在 Ubuntu 和其他 Linux 发行版中启动、停止和重启服务 | Linux 中国...
  8. 网易严选Java开发三面面经:mysql索引面试题
  9. Kickstart+HTTP+DHCP+TFTP全自动批量安装部署Linux系统
  10. AI 之 OpenCvSharp 安卓手机摄像头识别人脸
  11. linux at24测试程序,C51读写AT24C04源代码及AT24C04测试程序
  12. nds android7.0模拟器,NDS用MD模拟器jEnesisDS 0.7
  13. 如何看懂公司的财务报表(1)
  14. 计算机软件服务费入哪个科目,软件服务费计入什么科目?
  15. Linux内核源码的组织结构
  16. P2893 [USACO08FEB] Making the Grade G(dp优先队列)
  17. Mac中代理配置不稳定生效
  18. 搭建asp会议签到系统:第一章 账密登录
  19. 开源项目推荐:NS游戏模拟器Ryujinx
  20. Vue 3的provide和inject用法

热门文章

  1. c#物联网_基于C#实现日志记录与SQL SERVER的双向存储工控数字化之旅
  2. 15.在springboot中的事务处理
  3. Mac:Permission denied XXX
  4. 计算机电路计数器pl什么意思,计数器原理—不懂就要看哦~~
  5. 记一次app爬虫sign破解
  6. Python基础——np.where
  7. 递归函数求解阶层(C语言)
  8. 自定义Element ui中el-upload上传后的文件图标
  9. 计算机系统软件和应用软件的区别
  10. mac使用hbuilderx安卓模拟器调试app