MTI-Net: Multi-Scale Task Interaction Networks for Multi-Task Learning

Abstract

  • 在本文中,我们讨论了在多任务学习中提取任务信息时考虑多尺度任务交互的重要性。与通常的观点相反,我们发现具有高亲和力的任务在一定尺度上不能保证在其他尺度上保持这种行为,反之亦然。我们提出了一种新的架构,即MTI-Net,它以三种方式建立在这一发现的基础上。首先,它通过一个多尺度多模态蒸馏单元在每个尺度上明确地模拟任务交互作用。其次,通过特征传播模块将提取出来的任务信息从低尺度传播到高尺度。第三,通过特征聚合单元对各个尺度的细化任务特征进行聚合,产生最终的任务预测结果。在两个多任务密集标记数据集上的大量实验表明,与之前的工作不同,我们的多任务模型提供了多任务学习的全部潜力,即更小的内存占用,减少的计算数量,以及单任务学习的更好性能。

1.Introduction and prior work

  • 我们周围的世界充斥着复杂的问题,需要同时解决大量的任务。自动驾驶汽车应该能够检测场景中的所有物体,定位它们,了解它们是什么,估计它们的距离和轨迹,等等,以便在周围环境中安全导航。同理,一个智能广告系统应该能够在它的视角中检测到人的存在,了解他们的性别和年龄群体,分析他们的外表,跟踪他们在看哪里等,从而提供个性化的内容。这样的例子数不胜数。可以理解的是,这需要高效的计算模型,其中多个学习任务可以同时解决。
  • 多任务学习(MTL)[2,37]解决了这个问题。与单任务情况下,每个单独的任务由自己的网络单独解决相比,多任务网络在理论上有几个优势。首先,由于它们的层共享,产生的内存占用大大减少。其次,由于它们明确地避免重复计算共享层中的特征,对于每个任务一次,它们显示出了更高的推理速度。最重要的是,如果关联的任务共享互补信息,或充当彼此的正则化器,它们就有可能提高性能。对于前者的证据已经在文献中提供了某些成对的任务,例如检测和分类[9,34],检测和分割[6,12],分割和深度估计[7,47],而对于后者,最近的努力指向[42]方向。
  • 在这些观察的激励下,研究人员开始设计能够从多任务监控信号中学习共享表示的架构。Misra等人[31]提出使用“十字绣”单元来结合来自多个网络的特征,以学习更好地结合共享表示和特定任务表示。Kokkinos[19]引入了一个名为UberNet的多头架构,它在一个统一的框架中共同处理多达7个任务,可以进行端到端训练。Zamir等人[49]通过在包含26个任务的字典中找到迁移学习依赖性,建模了视觉任务空间的结构。尽管这些或类似的研究报道了进展[39,27,32,25,44],但如果不相关的任务之间发生信息共享,多任务联合学习可能会导致单任务性能下降。后者被称为负迁移[52],在[19]中有很好的记录,其中估计法线的改进导致对象检测的下降,或者在[12]中,多任务版本的性能低于单任务版本。
  • 为了弥补这种情况,一组方法小心地平衡个别任务的损失,试图找到一个平衡,其中没有任务显著下降。例如,Kendall et al.[16]使用每个任务的同方差不确定性来重新衡量损失。提出了梯度归一化[5],通过自适应归一化每个任务梯度的大小来平衡损失。类似地,Sinha等人[41]试图通过调整梯度大小来平衡损失,但不同的是,他们为此采用对抗性训练。动态任务优先级[10]提出对任务学习顺序进行动态排序,并将“困难”任务优先于“简单”任务。Zhao等人[52]引入了一个调制模块,以鼓励“相关”任务之间的特性共享,并消除“无关”任务的学习混乱。Sener和Koltun[38]提出将多任务学习引入多目标优化方案,自适应地改变不同损失的权重,从而获得Pareto最优解。
  • Maninis et al.[29]采用了另一种方式,遵循了“单任务”路线。也就是说,在多任务框架下,他们执行单独的向前传递,每个任务一个,激活所有任务之间的共享反应,以及一些特定于任务的剩余反应。此外,为了抑制负迁移问题,他们在梯度水平上应用对抗性训练,使他们在更新步骤中在不同任务之间具有统计上的不可区分性。
  • 注意,到目前为止,前面提到的所有工作都遵循一个共同的模式:它们直接在一个处理周期中预测来自相同输入的所有任务输出(也就是说,所有预测都是一次性生成的,并行或顺序生成,之后不会再细化)。这样一来,他们就无法捕捉到任务之间的共性和差异,而这些共性和差异可能对彼此都有好处(例如,深度不连续性通常与语义边对齐)。可以说,这可能是这组工作只实现了适度性能改进的原因(请参阅[29])。为了缓解这个问题,最近的一些工作首先采用多任务网络来进行初始任务预测,然后利用这些初始预测的特性来进一步提高每个任务的输出——以一次性或递归的方式。特别地,Xu等[47]提出通过空间注意从其他任务的初始预测中提取信息,然后将其作为残余添加到感兴趣的任务中。Zhang等[50]选择了对每个任务进行顺序预测,目的是利用一个任务过去预测的信息,在每次迭代中细化另一个任务的特征。在[51]中,他们扩展了这个想法。他们使用递归过程传播在初始任务预测中发现的类似的跨任务和任务特定模式。为此,他们对初始预测的亲和矩阵进行操作,而不是像以前[47,50]那样对特征本身进行操作。
  • 尽管在这些工作中已经报告了更好的性能改进,尽管是针对特定的数据集(见[47]),但它们都基于这样一个原则:任务之间的交互,这是上述蒸馏或传播过程中必不可少的,只发生在固定的、局部的或全局的尺度上。然而,据我们所知,情况并非总是如此。事实上,在某一尺度上具有高模式亲和性的两个任务并不保证在其他尺度上保持这种行为,反之亦然。以语义分割和深度估计任务为例,考虑两辆距离不同的汽车在我们的摄像机视角前,其中一辆部分遮挡另一辆的情况。
  • 从局部尺度(即补丁级别)来看,两辆车之间区域深度标签的不连续表明语义标签中应该存在类似的模式,即在完全相同的区域中应该有语义标签的变化,尽管事实上这是不正确的。然而,从全球范围来看,这种模糊性是可以解决的。如果我们交换任务的顺序,从全局范围到局部范围,也可以得到类似的观察结果。
  • 我们得出的结论是,模式关联性不应只在任务级别考虑,就像现有的研究那样[47,50,51],而应在尺度级别上加以限制(有关更详细的讨论,请参阅第2.2节)。
  • 在本文中,我们超越了这些限制,在跨任务传播特性时明确地考虑了不同尺度下的交互。我们提出了一个新的架构,即MTI-Net,建立在这个想法之上。从由现成骨干网生成的输入图像的多尺度特征表示(例如[23,45])开始,我们在每个考虑的尺度(在我们的例子中是四个尺度)上对每个任务进行初始预测。其次,针对每个任务,我们通过空间注意的方法从其他任务中提取信息,以细化初始预测的特征。注意,这个过程在每个尺度上分别发生,以便捕获在每个尺度上发生的惟一任务交互,如上所述。为了解决骨干网较高尺度上的视场限制,从而阻碍这些尺度上的任务预测,我们提出从较低尺度传播提取的任务信息。在最后阶段,从所有尺度中提取每个任务的特征进行聚合,从而得到最终的任务预测。
  • 我们的贡献有三个方面:(1)我们建议在多任务网络中跨任务提取信息时明确考虑多尺度交互;(2)我们引入了一种架构,在此基础上建立了专用模块,即多尺度多模态蒸馏(第2.1节)、特征跨尺度传播(第2.4节)和特征聚合(第2.5节);(3)我们克服了多任务网络中性能下降的一个常见障碍,并观察到任务之间可以相互受益,导致与单任务相比的显著改进。

2.Method

2.1.Multi-task learning by multi-modal distillation

  • 视觉任务是相互关联的。例如,它们可以共享互补的信息(表面法线和深度可以直接从彼此派生),充当彼此的正则化器(使用RGB-D图像预测场景语义[11]可以提高预测的质量,因为有可用的深度信息),等等。基于这一观察结果,最近的MTL方法[47,50,51]试图显式地从其他任务中提取信息,作为一种补充信号来提高任务性能。通常,这是通过结合现有的骨干网实现的,该骨干网进行初始任务预测,并进行多步解码过程(见图1(左))。
    在这里插入图片描述
    (图1:第2节中描述的不同MTL体系结构的概述。(左)PAD-Net[47]和PAP-Net[51]中使用的体系结构。从骨干网中提取的特征用于初始任务预测。在进行最终的任务预测之前,通过蒸馏装置将任务特征组合在一起。(右)拟建的MTI-Net的架构。从提取多尺度特征的主干开始,在每个尺度上进行初始任务预测。任务特征在每个尺度上被单独提取,使我们的模型能够在多个尺度上捕捉任务交互,即接受域。蒸馏完成后,将各个尺度提取的任务特征进行聚合,进行最终的任务预测。为了提高性能,我们用特征传播机制扩展了我们的模型,该机制将提取的信息从低分辨率任务特征传递到高分辨率任务特征。)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值