Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

目录

摘要

1 引言

2 相关工作

3. 结合同方差不确定性的multi-task learning

3.1 同方差不确定性作为任务依赖不确定性

3.2 多任务似然

4 视觉场景理解模型

5 实验

6 结论

摘要

很多深度学习应用从包含多个回归或分类目标的多任务学习中受益。这篇文章中,我们研究了这些框架的性能,其强烈依赖于每个任务的损失权重关系。手动调整这些任务的权重比较困难且成本高昂,实践中,多任务学习往往是让人望而却步的。我们提出了一个多任务学习的指导方法,它通过度量每种任务的同方差不确定性去调节损失函数。这使得我们可以同时学习不同数量级的回归和分类任务。我们的模型可以从输入图片中学习每个像素级回归任务、语义和实例分割。令人兴奋的是,我们的模型可以学习多任务的权重,且比单个任务独立学习,效果更好。

1 引言

多任务学习旨在通过从一个共享的特征层中学习多个目标函数进而来提高模型的性能和预测准确率。多任务学习在很多机器学习任务中是非常普遍的,从CV、NLP到语音识别。

我们研究了CV中视觉理解场景下的多任务学习。视觉场景算法必须同时理解场景中的位置和内容。这提出了一类有趣的多任务学习问题,因为场景理解涉及到不同尺度下的回归和分类任务的联合学习。视觉场景理解中的多任务学习在那些计算成本高昂的系统中是至关重要的,比如机器人应用中。融合多任务学习到一个模型中,可以降低计算量,利于系统实时运行。

之前的同时学习多任务的方法通常会使用简单的加权损失,损失权重是统一的,或者手动设定。然而,我们研究得知模型的性能严重依赖于各任务之间的权重选择。搜寻一个最优的权重,使用手动调节的成本是非常高昂的,且很难解决。我们研究发现,每个任务的最优权重严重依赖于损失的度量尺度(比如,米、厘米或毫米),最后才是任务噪声的影响。

这篇论文中,我们提出了一种指导方法,使用同方差不确定性组合多任务的损失函数来同时学习多个目标。我们解释了将同方差不确定性作为任务依赖权重,并且解释了如何引出的指导性多任务损失函数,它可以学习平衡回归和分类任务的损失。我们的方法可以最优地学习平衡权重,对比各自学习每个任务,可以带来了更优异的效果。

特别地,我们用视觉场景中的位置和内容中的三个任务来说明我们的方法。首先,我们学习在像素级别下分类目标,也就是语义分割。其次,我们模型学习实例分割,它是分割上的更难的任务,需要将每一个目标划分开(区分道路上的每辆小汽车),这个相比语义分割更难,不但需要对像素类别的估计,还需要标记每个像素所属的实例。最后,我们模型预测像素深度。用于识别的像素深度已经被标识了,用无监和有监的深度dense网络。然而,能较好地预测出像素深度是非常困难的。研究证实,我们可以通过使用语义标签和多任务学习,来提升对于位置和深度的预测性能。

在现有的文章中,为了构建一个完整的视觉场景理解模型,会将深度模型分开成深度回归预测,语义分割和实例分割。给定一个输入图片,我们的框架首先生成一个语义分割、深度预测和实例分割的联合结构(图1)。其他的视觉模型已经提出了多任务学习,我们研究了如何结合语义和内容。融合这些任务到一个模型中,可以保证减少计算量的同时,每个单独任务的输出结果保持一致。最后,我们证实了,用一个共享层的多任务学习可以提升不同任务的性能,使模型效果更优。

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

总结来说,论文的关键贡献点:

  1. 基于同方差不确定性,提出一个新颖且有指导性的多任务学习框架,可以同时学习不同尺度下的分类和回归任务;
  2. 一个针对语义分割、实例分割和像素深度回归的统一框架;
  3. 说明了在多任务学习中损失权重的重要性,且说明了对比单独训练模型,如何获得更优的模型性能。

2 相关工作

ignored

3. 结合同方差不确定性的multi-task learning

多任务学习涉及到一个关于多目标函数的模型的优化问题,这在深度学习中很普遍。融合多个目标函数的损失的简单方法是针对每个任务简单使用线性加权求和:

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

这种方法在之前的工作中是占主流的。例如密集预测任务、场景理解任务、旋转任务(四元数)以及姿态平移任务等。这个方法存在一些问题,也就是,模型的性能对权重的选择非常敏感,如图2。这些权重超参数非常难以调节,通常每次任务需要花费数天时间。因此,非常迫切找到一种可以学习最优权重的简便方法。

更具体地说,我们来设计一个网络结构,它可以从一张图片中预测像素深度和语义类别。图2列出了每张图的边界表示每个任务的训练情况,曲线表示每个任务权重变化时的模型性能。可以看出,在几个较优权重处,联合任务的性能要比各个任务单独训练时的效果好。在最优权重附近,这个网络的性能劣于比其中一个任务的性能。然而,搜素这种最优权重成本高昂,且随着多任务大模型,难度递增。图2也累出了两种回归任务的相似结果,实例分割和像素深度回归。接下来,我们给出如何从概率模型中学习最优任务权重。

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

3.1 同方差不确定性作为任务依赖不确定性

贝叶斯建模中存在的两类不确定性。

认知不确定性。缺乏训练数据导致的,可以通过增加数据来解释。

偶然不确定性。由于训练数据无法解释信息而导致的不确定性。偶然不确定性可以通过观测高准确率下的所有可解释变量来说明。偶然不确定性又可以分为两类:

数据依赖或异方差不确定性:依赖于输入数据,可以作为模型输出被预测出来。

任务依赖或同方差不确定性:不依赖于输入数据,不是模型输出,而是一个变量,对于输入数据保持不变,随着任务的不同而变化。

多任务场景中,我们发现任务不确定性可以捕获任务之间的相对置信度,反映了分类或回归任务的内在不确定性。它还依赖与任务的表征或度量单位。我们提出在多任务学习中可以使用同方差不确定性作为一个基准,来加权不同任务的损失。

3.2 多任务似然

基于最大化同方差不确定性的高斯似然估计,产生多任务损失函数。

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics表示在权重为Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics,输入为Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics条件下的神经网络输出,对于回归任务,高斯似然估计为(Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics为观测到的噪声标量):

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

对于分类任务,通常会经过一个softmax变换,高斯似然估计为:

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

在多任务的这个例子中,我们将最大似然分解成独立因子,定义

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics为充分统计量,可以得到多任务最大似然

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics为模型的输出(比如,语义分割,深度回归等)。

在最大似然推断中,我们最大化对数似然。回归模型中,对数似然可以表示为:

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

对于高斯似然(或拉普拉斯相似度) ,然后我们可以在

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and SemanticsMulti-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics下最大化对数似然。

假定我们的模型输出有

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and SemanticsMulti-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics组成,服从如下高斯分布:

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

损失函数

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

这里,

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics为第一个输出变量的损失,Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics同样如此。

极小化目标函数,可以把

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics分别看做Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics的相对权重,可根据数据自适应调整,变量Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics的噪声参数Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics增加的话,Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics的权重降低。相应地,噪声降低的话,对应的损失函数权重增加。最后一项作为正则项,控制噪声增加过多(实际上或略了数据)。

这种设计可以拓展到更多的回归任务。对于分类任务,缩放后接softmax函数。如下:

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

这可以解释为玻尔兹曼分布(也叫Gibbs分布),输入除以

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics(可以联系到温度T),这个尺度因子可固定或学习,参数的量级决定了这个离散分布的一致程度。这和用熵度量的不确定性相关。

对数似然可以表示为:

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

接下来,假定多任务有连续输出任务

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics 和离散输出任务Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics构成,分别用高斯似然和对数似然表示。联合损失可以表示为:

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics为可学习的参数(在训练过程中,由于Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics相较于Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics更加稳定,并且由于Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics作为损失函数权重系数的除数,采用Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics尽可能的避免了除数为0的情况,因此,回归权重系数的目标变为了Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics代替)。

4 视觉场景理解模型

我们设计了一个学习回归和分类任务的网络结构,包括几个深度卷积encoder层,后接对应任务的decoder卷积层。

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

5 实验

Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

6 结论

同方差不确定性是一种对损失加权的高效方法。任务依赖性的同方差不确定性可以提高模型的表达能力和各自任务的性能。

仍然有一些待遗留问题,

首先,对所有任务,最优权重不止一个。

第二个问题,将shared encoder网络,针对每个任务,拆分成单独的decoder的最佳位置在哪里?

最后一个问题,语义分割和深度预测的效果为何比语义分割是实例分割的效果更好?

Original: https://blog.csdn.net/qq_32275289/article/details/123330096
Author: NLP_wendi
Title: Multi-Task Learning Using Uncertainty to Weigh Losses for Scene Geometry and Semantics

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/528268/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球