多目标学习(Multi-task Learning)-网络设计和损失函数优化

目前多目标学习主要从两个方向展开,一个是网络结构设计,一个是损失函数优化;一、MTL网络设计MTL网络通常可分为两种两种,一种是hard-parameter sharing不同任务间共用底部的隐层,另一种是soft-parameter sharing,形式较为多样,如两个任务参数不共享,但对不同任务的参数增加L2范数的限制;也有一些对每个任务分别生成各自的隐层,学习所有隐层的组合;这两种方式各有优劣,hard类的网络较soft不容易陷入过拟合,但如果任务差异较大,模型结果较差,但soft类网络通常参数较
摘要由CSDN通过智能技术生成

目前多目标学习主要从两个方向展开,一个是网络结构设计,一个是损失函数优化;

一、MTL网络设计

MTL网络通常可分为两种,一种是hard-parameter sharing不同任务间共用底部的隐层,另一种是soft-parameter sharing,形式较为多样,如两个任务参数不共享,但对不同任务的参数增加L2范数的限制;也有一些对每个任务分别生成各自的隐层,学习所有隐层的组合;这两种方式各有优劣,hard类的网络较soft不容易陷入过拟合,但如果任务差异较大,模型结果较差,但soft类网络通常参数较多,结构比较复杂,线上部署困难;

1、hard-parameter sharing models

hard-parameter sharing models为不同任务底层共享模型结构和参数,顶层分为几个不同的目标进行网络训练
在这里插入图片描述
这种结构本质上可以减少过拟合的风险,但是效果上可能受到任务差异和数据分布带来的影响

基本上,只要是能预测单模型的模型,都可以很简单的转化为hard-parameter sharing models的结构,只需要将共享层的最后一层与多个输出层拼接即可。

2 soft-parameter sharing models

soft-parameter sharing models不同于hard-parameter sharing model,每个任务有自己的参数,最后通过对不同任务的参数之间的差异加约束,表达相似性。比如可以使用L2, trace norm(迹范数)等。

网络结构如下:
在这里插入图片描述

3、相关技术

3.1 MMoE 谷歌2018

在这里插入图片描述
其中(a)是传统的硬共享参数模型,(b)是MoE模型,使用单个gate控制多个任务的参数,(c)是MMoE模型,在MoE的基础上,每个任务使用一个gate控制其权重。
名词解释:
a、expert:指对模型输入进行不同方式的变换处理的网络层,每个Expert表示一种网络(Expert也可以都一样)
b、gate:控制每个Expert权重的变量,对于每一个任务,不同Expert的权重可能是不一样的,因此使用gate来控制权重,类似于attention
MoE模型对于不同的任务的gate权重是一样的,其函数表达式如下:
y k = h k ∑ i = 1 n g i f i ( x ) y^k=h^k\sum_{i=1}^{n}g_if_i(x) yk=hki=1ngifi(x)
其中k表示第k个任务,n表示n个expert网络

MMoE是在MoE的基础上提出的方法,作者认为对于不同的任务,模型的权重选择是不同的,所以为每个任务分配一个gate模型。对于不同的任务,gate k的输出表示不同Expert被选择的概率,将多个Expert加权求和,得到f_k(x),并输出给特点的Tower模型,用于最终的输出。

MMoE模型的表达式如下:
f k ( x ) = ∑ i = 1 n g i k ( x ) f i ( x ) f^k(x)=\sum_{i=1}^{n} g_i^k(x)f_i(x) fk(x)=i=1ng

  • 12
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值