0%

syd 【AAAI 2021】Maximum Roaming Multi-Task Learning

关键词:多任务学习

Abstract

多任务参数联合优化是MTL中一个活跃的研究问题,对不同任务的参数进行划分(不相交或有重叠),可以放宽共享权值的优化约束,但是这种方法会削弱多任务产生的inductive bias(MTL的思想)。本文提出了新的划分参数空间的方法(Maximum Roaming),且不会削弱inductive bias。该方法受dropout启发,随机改变参数分区,迫使参数在规定的频率下尽可能地查看任务,使网络全面适应每次更新。实验表明,与普通的分区优化策略相比,roaming带来的正则化对性能的影响更大,且整体方法灵活、易于应用。

image-20210314121704175

1. Introduction

MTL旨在通过共同学习多个任务,提高泛化性;利用不同任务的训练信号中所包含的多个领域特定信息,作为inductive bias,起正则器的作用。但是针对多个任务优化同一批参数,可能出现某一任务的提升会导致其他任务性能的下降,即任务干扰;不同任务所需要的表示具有特异性

已有方法:用task-sepcific参数扩大网络,给任务以更大的专业化空间;采用架构适配以适应特定的任务集。但是这些方法都没有解决共享部分的任务干扰,也不能很好地随任务数量扩展。也可以通过构造特定任务参数划分,参数被更少的任务限制,这会削弱inductive bias。

本文提出动态划分策略——Maximum Roaming方法,控制任务干扰的前提下,产生inductive bias。该方法受dropout思想启发,参数可以在几个特定任务的子网中roam(漫游),从maximum的任务中进行学习,建立更鲁棒的表示;且该方法不是寻找一个最优的划分,而是连续的随机划分、随机给任务分配参数,允许它们从每个任务中学习,实验证明了该方法相较于SOTA的提升。

解决任务干扰引发的问题的三个方法:

loss加权:在优化目标中通过加权来平衡不同任务的loss,但是这些方法并不旨在解决任务干扰,只是调整每个任务在总目标中所占量级的大小。Maximum Roaming方法是明确地控制任务干扰。

多目标优化:把MTL转化为多目标优化问题。一些现有方法使得参数最后到达一个帕累托最优状态,即不存在参数更新方向,使得某一任务性能提升且不损害其他任务性能;但是强烈的任务干扰会导致参数停滞

参数划分:将注意力机制用于卷积filter级别,使得每个任务在每一选择其需要的参数子集,选择范围越大,使用给定参数的任务就越少,减少任务干扰。但是已有的方法会削弱inductive bias,不考虑每个任务对每个参数学习过程的贡献,而我们的方法使得每个参数有序地从每个任务中进行学习。

3. Preliminaries

定义训练集:

image-20210315105551576

$T$是任务个数,$N$是数据个数,用标准的深度为$D$的共享卷积网络学习$T$个任务,并在预测层对每个任务$t$都有输出,卷积核为要学习的参数,第$d$层网络的参数量记为$S^{(d)}$,用$S_{max}$代表$d$层中参数的最大值。

标准的MTL共享所有参数,任务$t$第$d$层的输出为:

image-20210315110527668

$H$为隐藏层输入,$K^{(d)}$是第$d$层的卷积核。

3.1 参数划分

二元参数划分矩阵:

image-20210315111601592

$m_t^{(d)}$是$d$层与任务$t$相关的列向量,用以下操作可以为每一个任务$t$选择一个参数子集:

image-20210315112647638

隐输入也取决于任务:每个任务有独立的forward pass,反向传播与特定任务相关的loss,每个参数会收到使用该参数的任务传回的梯度信息。

3.2 参数划分初始化

划分矩阵中的参数都满足参数为$p$的伯努利分布:

image-20210315113735399

$p$控制共享率(每一层都相同),各任务参数的重叠率,如某个参数从不同任务收到的梯度信息的数量。这个数目越小,有冲突信息的概率就越低,可以减少任务干扰,简化优化问题。同时也削弱了inductive bias,影响MTL效果。

保证网络容量,对参数加以限制:

image-20210315115830436

=1,即$p=0$,不相交参数划分;=$T$,即$p=1$,完全共享网络。

dropout思想:使参数在不同的随机抽样的子网中连续学习有效表示。

通过规律地更新参数划分矩阵,使参数依次从每个任务中进行学习,即在任务中roam,有序建立inductive bias。这就是Maximum Roaming MTL,包括两个核心要点:1)参数划分矩阵的更新策略;2)更新划分矩阵时如何选择要更新的参数

4. Maximum Roaming Multi-Task Learning

介绍本方法的核心内容

假设1:同时优化不同任务的参数可以得到inductive bias,也可以通过对不同任务子集的顺序优化得到。

根据假设1,划分矩阵可以随时间演化,用3中的方法初始化,经过每一步$c$,矩阵的值就会更新,在满足约束的前提下,参数可以在不同的任务间roam。

定义1:$A_t(c)$是任务$t$在第$c$步的参数目录,把$c$步之前的参数并集得到$B_t(c)$,即到$c$步时任务$t$访问过的参数集合,到$c+1$步时,划分矩阵按照以下规则更新:

image-20210315142113901

$\Delta$控制矩阵更新频率,一般比较大(网络可以在一个设定下充分学习,如果更新太频繁,会导致更大的任务干扰),$c=E/\Delta$,$E$代表训练轮数,在每$\Delta$轮中用相同的参数划分进行训练,每次更新一个参数。

引理1:更新频率$\Delta$有以下属性:

  1. 更新会在$\Delta(1-p)S_{max}$训练步内完成
  2. 更新完成时,每个参数至少被每个任务训练了$\Delta$轮
  3. 在整个更新过程中,隶属于每个任务的参数量是不变的(不同任务参数划分之间的重叠保持不变,控制任务干扰

证明:1)$B_t(c)$初始化为$pS$,每$\Delta$轮增加1

经过$c$步后,每个参数$i$被任务$t$使用的概率是:

image-20210316144413690

image-20210316144443632

$r(c)$是更新进度。此式说明,随着不断的更新,概率会增加、最大化,与该参数相关的任务数量也会增加,由此学到inductive bias。

综上所述,在控制任务干扰的前提下学到inductive bias。

5. Experiments

5.1 数据集

Celeb-A:超过200k张名人图片,40种不同的面部属性,将40个属性划分为8组,每组创建一个属性预测任务,简化计算。

CityScapes:5000张街景图像,有像素级标注。7个语义分割、1个深度估计,共8个任务。

NYUv2:1449张室内图片,包含464种不同的场景。13个语义分割、深度估计、表面法线估计,共15个任务。

5.2 baselines

  • MTL 标准完全共享网络,各任务权重相同
  • GradNorm 完全共享网络,各任务权重可学习
  • MGDA-UB 完全共享网络,将MTL看作多目标优化问题
  • SE-MTL 参数划分方法,有可训练实值掩码
  • STL 单任务模型,每个任务一个模型

5.3 面部属性检测实验

采用ResNet-18作为骨干网络

image-20210315163905359

Roaming的影响:研究参数roaming对MTL性能的影响。图1左给出了Max Roaming方法与固定分区方法F-scores(更新全部完成时)随共享率$p$的变化。与固定分区相比,Max Roaming可以提升性能。

$\Delta$和更新进度$r(c)$的影响:$p$设为0.5,图1中给出了结果,当$\Delta$大于0.05时,$\Delta$越大,F-scores越大,所以$\Delta$不能过小;随着更新进行,F-scores增加。

随机选择的影响:更新时如何选择要更新的参数?MR是随机选择,从$i-$、$i+$所属的集合的均匀分布中选择。另外设计了一种确定性更新方法——根据最小化平均余弦相似度,选择最有可能为任务提供额外信息的参数,丢弃冗余参数。原则如下:

image-20210316154859336

$K$是各参数的卷积核,图1右给出了确定性选择参数vs随机选择参数的F-scores,在更新初期表现差不多,随着更新的进行,MR方法优于确定选择方法。

表1给出了MR与其他baselines的总体比较。

image-20210316155919158

5.3 场景理解

MR在另外两个数据集上的应用,表2-4给出了结果。

image-20210315165621540

image-20210315165634470

image-20210315165737427

MR方法在语义分割、法线估计任务种表现最好,在深度估计中排第二。因为MR方法保留了inductive bias,可以提升比较相似的任务的性能(也就是分割任务)。与单任务相比,MTL随着任务数量增多性能可能会下降,可能不如单任务模型。

6. Conclusion

提出了Maximum Roaming——动态参数划分方法,以减少任务干扰,同时充分利用多任务带来的inductive bias,该方法使参数能够连续从尽可能多的任务中学习。与其他分区方法相比,更快,无需额外参数。实验将MR应用于卷积网络,实现了性能的提升。


code link:https://github.com/lucaspascal/Maximum-Roaming-Mutli-Task-Learning.