Advertisement

An Overview of Multi-Task Learning in Deep Neural Networks

阅读量:

目录

摘要

1. 引言

2. 动机

3. 两种深度学习多任务学习方法

3.1. 硬参数共享

3.2. 软参数共享

4. 为什么多任务学习有效?

4.1. 隐含的数据增强

4.2. 注意力聚焦

4.3. 窃听

4.4. 表示偏见

4.5. 正则化

5. 非神经网络模型中的多任务学习

5.1. 块稀疏正则化

5.2. 学习任务关系

6. 深度学习多任务学习的最近工作

6.1. 深度关系网络

6.2. 完全自适应特征共享

6.3. 十字绣网络

6.4. 低层监督

6.5. 联合的多任务模型

6.6. 利用不确定性加权损失

6.7. 张量因式分解多任务学习

6.8. 水闸网络

6.9. 应该在模型中共享什么?

7. 辅助任务

7.1. 相关的任务

7.2. 对抗

7.3. 提示

7.4. 聚焦注意力

7.5. 量化平滑

7.6. 预测输入

7.7. 利用未来预测当前

7.8. 表示学习

7.9. 什么辅助任务是有帮助的?

8. 结论


摘要

多种学习范式已在机器学习领域取得了显著应用成效,并已广泛应用于自然语言处理、语音识别、计算机视觉以及药物发现等多个细分领域。本文旨在系统性地探讨多任务学习的方法与进展,尤其是在深度神经网络框架下的应用研究方面展开阐述。文章介绍了主要采用的两种多任务学习方法,并对其进行了深入探讨,同时详细分析了当前研究的最新动态,尤其是对其实现原理进行了深入阐述,并提供了一些建议来选择合适的辅助任务以提升性能

1. 引言

在机器学习领域中

多任务学习已经在机器学习的多个领域取得了显著的应用成果,特别是在自然语言处理、语音识别以及计算机视觉等领域表现尤为突出,同时在药物发现等新兴领域也展现出巨大潜力.这种技术通过整合不同领域的知识进行深度融合,实现了多项目标的同时提升了整体性能.从研究角度来看,当前主要的研究方向集中在以下几个方面:一是联合训练方法,二是强化自监督学习策略,三是开发辅助任务以提高模型泛化能力.值得注意的是,一旦能够优化多个损失函数并实现同步更新,就可以判定为正在进行多任务学习研究.在这一过程中,我们能够更加清晰地分析基于多任务学习的应用场景,并深入理解其内在机理.

即使在一些典型的场景中只需要优化某个损失函数就能实现目标时,在这种情况下设置一个辅助任务也有可能提升主任务的表现。Caruana于1998年简洁明了地阐述了多任务学习的核心目的:多任务学习通过整合多个相关训练信号中的特定领域信息以增强模型的一般化能力。

在本文中, 我们旨在概述当前阶段多任务学习的主要内容, 尤其是基于深度神经网络的方法. 第二部分从多个视角阐述了推动其发展的动机. 第三部分介绍了两种最常用的主要深度学习方法. 第四部分详细探讨了这些关键机制, 这些机制共同揭示了其在实际应用中的有效性原因. 在深入探讨基于神经网络的方法之前, 在第5节综述了一些相关的基础内容. 第6节详细介绍了近年来提出的几种创新性的方法. 最后, 在第7节重点讨论了几种广泛应用的辅助性任务, 并深入分析了什么样的辅助知识对于提升性能是有效的.

2. 动机

可以从不同的角度看多任务学习的动机:

从生物科学的角度来看,在进行新任务的学习过程中, 我们往往会依赖于之前所获得的相关知识经验来进行类比推理, 这种现象可以从人类的学习行为中得到启发. 在机器学习领域, 多任务学习方法被认为是一种特殊的归纳迁移过程. 归纳迁移通过引入特定的归纳偏差来提升模型性能, 而这种归纳偏差实际上反映了对某些假设空间的偏好倾向. 例如, L1正则化作为一种常见的归纳偏差形式, 其核心思想就是偏好那些具有稀疏特性的解向量. 在多任务学习框架下, 这种特殊的归纳偏差并非是为了直接服务于那些辅助性知识本身, 而是通过提供额外的任务信息来引导模型偏好能够同时适应多个目标的任务假设.

3. 两种深度学习多任务学习方法

到目前为止我们已完成深入研究了多任务学习理论动机。为了进一步明确其观点我们现在将探讨深度神经网络中实现这一技术的两种主要方法。在深度学习框架下多数情况下我们会采用隐藏层中的硬参数共享或软参数共享的方式来执行多任务学习

3.1. 硬参数共享

硬参数共享被认为是神经网络实现多任务学习最常用的方法,并始于1993年。如图1所示,在这种方案下硬参数共享通常是通过共用所有任务的隐藏层来实现的 ,同时保留了一些针对特定任务的输出层

固定参数共享明显降低了过拟合的风险。研究表明,在1997年就有关于共享参数风险与特定任务参数风险数量级差异的研究表明共享风险较小。从直观上看这种现象很合理:当同时学习的任务数量越多模型就越被迫去寻找一种能够涵盖所有任务的一致表达方式从而在原始任务中不易发生过拟合。

3.2. 软参数共享

其中,在软参数共享机制下,每个任务都拥有独立的模型以及相关的共享参数。此外** ,除了促进各任务间共享资源外** ,我们还通过正则化模型参数间的距离来进一步引导它们趋向于相似性** ,如图所示** 。Dong等人(Dong et al.)于2015年提出采用L2范数作为正则化手段;相比之下,在2017年Yang与Hospedales(Yang and Hospherdes)提出了基于迹范数的正则化方法

在深度神经网络中用于实现软参数共享的约束变量主要得益于多任务学习中的正则化技术这一重要启发,在实际应用过程中已被推广到其他模型中进行进一步优化

在这里插入图片描述
4. 为什么多任务学习有效?

尽管从多任务学习中获得的归纳偏见看似合理,在深入研究其背后机理之前有必要先对其有一个清晰的认识。最初由Caruana在1998年提出这一观点后人们开始探索并发展出一系列理论框架以解释这种现象。在此基础上我们假设有两个相关联的任务A与B这两个任务都依赖于同一个共享的潜在特征表示层F

4.1. 隐含的数据增强

多任务学习显著提高了训练数据集中的样本数量。鉴于所有参与的学习任务都具备一定程度的噪声特征,在针对特定任务A进行训练的过程中,默认情况下我们会致力于构建一个针对该特定任务表现出色的表示模型,并确保其在数据依赖关系上具有一定的鲁棒性同时保持良好的泛化能力**(注:此处使用了双星号强调关键点)。值得注意的是每个任务都可能呈现出独特的噪声分布特征;因此在联合训练两个或多个相互关联的任务时能够捕获更为普遍性的表征特性(注:此处使用了双星号强调关键点)**。如果仅专注于单一具体的任务(如A),可能会导致过拟合问题;而通过联合训练多个相关性较低的任务(如A和B),模型能够在不同噪声模式下的平均表现中获得更为鲁棒且通用的表征F

4.2. 注意力聚焦

如果一个模型面临极为复杂的环境或者数据量有限且维度很高,则难以有效地区分出相关与不相关的特征。多任务学习有助于模型将注意力集中在真正重要的特征上 ,这是因为其他任务提供了关于这些特征相关性和无关联性的额外证据。

4.3. 窃听

有些某些特征G在任务B中较为容易学习到,在任务A中相对困难学习到。这可能是因为A以更为复杂的方式与G进行交互;也可能是由于其他某些特征阻碍了模型对G的学习能力。解决这一问题最直接的办法是利用提示机制(如Abu-Mostafa在1990年的研究中所述)。

4.4. 表示偏见

多任务学习偏好模型从那些同样偏好于其自身表示的任务中提取特征。研究者Baxter于2000年发现,在同一环境中获得足够的训练任务表现出良好性能的前提下,在面对新任务时这一方法仍具有效性。

4.5. 正则化

最后, 多任务学习通过采用归纳偏见的方式达成正则化. 这有助于减小过拟合的风险以及模型的Rademacher复杂度, 从而抑制对噪声数据的过度拟合能力.

5. 非神经网络模型中的多任务学习

为了深入解析深度学习中的多任务学习机制,本研究计划系统性地探讨线性模型、核方法以及贝叶斯算法领域中已有的多任务学习相关文献。具体而言,在多任务学习的发展历程中始终占据重要地位的两种核心思路如下:第一,在范数正则化框架下促进不同任务之间的稀疏性建立第二,在任务间关系建模方面取得突破性的进展

值得注意的是,在现有文献中大多采用的方法是针对同质场景的设计。这些研究通常假设每个任务均与单一输出相关联。例如,在实际应用中常见的做法是将一个多分类问题分解为多个二分类子问题。相比之下,在现代研究中更注重处理异质性较高的场景,并且每个特定的任务都有其独特的输出结果。

5.1. 块稀疏正则化
5.2. 学习任务关系
6. 深度学习多任务学习的最近工作

尽管当前主流的深度学习方法普遍采用多任务学习策略——无论是显式还是隐式的——作为模型的核心组件;然而,在现有研究中仍主要依赖于两种基础策略:硬参数共享和软参数共享。目前仅有少数研究致力于探索更为先进的多任务学习机制。

6.1. 深度关系网络

在计算机视觉领域中运用多任务学习时通常会采用共享卷积层并将全连接层设为专门针对各具体任务的层来进行学习。Long与Wang于2015年提出深度关系网络(Deep Relation Networks)来改进这一类模型。除了共享结构以及各具体任务对应的结构之外 他们将全连接层上的权重参数初始化为先验矩阵的形式从而使得模型能够捕获不同任务之间的相互关联如图3所示其与前文所述的贝叶斯模型具有相似之处然而这种方法仍然依赖于预先设定好的共享架构这对于大多数典型的计算机视觉问题已经足够但在新任务引入时可能会导致性能下降

在这里插入图片描述
6.2. 完全自适应特征共享

从对立面切入,则有Lü于2016年首次提出的自下而上模型。该模型由小型网络出发,在训练过程中采用一种促进相似任务分组的标准策略逐步扩展网络结构。通过这种逐步扩展的方式(如图4所示),生成分支。然而这种贪心策略可能导致局部最优解而非全局最优;同时给每个分支分配一个确切的任务也无法使模型理解任务之间的复杂关联。

在这里插入图片描述
6.3. 十字绣网络

正如软参数共享机制那样,在2016年 Misra 等人提出了基于各自独立的网络架构的方法,并引入了一种独特的缝纫单元(sewing unit) 作为创新模块。该方法能够通过从前一层输出中学习线性组合来整合各任务间的知识关联机制,并在此基础上构建相应的网络架构以实现多任务学习目标。研究者所提出的体系架构如图5所示,并且这种缝纫模块仅限于池化层和全连接层之后的位置进行应用

在这里插入图片描述
6.4. 低层监督

在自然语言处理(NLP)领域中,在当前的研究重点集中在探索如何通过优化任务层次结构来提升多任务学习的效果方面取得了一定进展。研究表明,在自然语言处理领域中,在当前的研究重点集中在探索如何通过优化任务层次结构来提升多任务学习的效果方面取得了一定进展。

6.5. 联合的多任务模型

基于此一发现

在这里插入图片描述
6.6. 利用不确定性加权损失

正交特性可与基于模型的方法相互配合使用。

在不确定性分类中包含认知不确定性和偶然不确定性的两大类,在偶然不确定性的分类中包含数据依赖型和任务依赖型两种类型。

替代学习共享特征的研究中发现,在2017年该研究团队提出了基于正交性的创新方法,并着重考虑了各个任务所存在的不确定性问题。随后,在代价函数中引入了各任务间的相对权重进行优化,并采用一种基于多因素分析的方法来确定这些相对权重值:其中相对权重被确定为基于各任务间依赖关系不确定性最大化高斯似然值的一种多任务损失函数。具体而言,在像素级深度回归、语义分割以及实例分割等多个应用场景下进行了实验验证,并最终将所提出的方法应用于图7所示的具体模型架构设计中

在这里插入图片描述
6.7. 张量因式分解多任务学习

最近的工作旨在系统性地总结现有的深度学习多任务学习(MTL)方法:Yang与Hospedales于2017年采用张量因式分解技术将模型参数划分为每一层的共享参数与特化于具体任务的参数,并以此实现了对以往矩阵因式分解相关方法的系统整合

6.8. 水闸网络

最后,在2017年,Ruder及其团队提出了水闸网络的概念,这一创新性的网络架构整合了多种基于深度学习的多任务学习方法,包括硬参数共享、交叉神经元网络、块稀疏正则化技术,以及最近在自然语言处理领域取得进展的任务分层学习方法等。

在这里插入图片描述
6.9. 应该在模型中共享什么?

上文综述了近期的主要研究进展;接下来将简要阐述在深度多任务学习模型中应共同探讨的内容。传统上,在多数多任务学习方法中,默认假设各任务均遵循相同的统计特性;尽管这种假设确实有助于知识共享(knowledge sharing),但这一前提并非普遍适用;因此,在构建更为稳健的体系时需考虑更为广泛的适用性问题。

虽然在深度学习多任务学习的早期阶段已经确定了每个任务应共享的具体层别结构设定[1],但这种固定的共享机制存在局限性,并不利于多任务体系结构的发展[2]。硬参数共享策略自1993年提出以来,在应用过程中仍发挥着重要作用[3]。然而这种策略存在明显缺陷:当所涉及的任务之间关联性较弱或者需要在不同层次进行推理时[4](例如模型构建中不同模块之间的交互关系复杂),硬参数共享就会迅速失效[5]。因此近年来的研究转向探讨能够自主识别并共享关键特征的新颖方法[6]。这种方法不仅提升了模型性能[7](通常优于传统的硬编码式参数共享方案),而且特别适合于那些需要处理不同粒度信息需求的任务场景[8](例如跨模态或多层级推理)。

如同最初所述, 一旦我们优化了超过一个损失函数, 就在进行多任务学习. 如果我们试图将所有任务的知识压缩到同一个参数空间中, 那么效果可能并不理想. 相反地, 我们应该参考已讨论的多任务学习进展, 以促进模型理解不同任务之间的互动关系, 这种方法将会更加有效.

7. 辅助任务

当我们的目标是一次生成多个任务的预测值时, 多任务学习天然地适应这一需求. 这种情况普遍存在, 例如在金融或经济学领域, 我们可能会预判许多相互关联经济指标的趋势; 在生物信息学研究中, 则可能同时关注多种疾病症状的变化. 在药物发现等相关领域, 我们需预判几十到几百种活性化合物的关键性质. 随着处理的任务数量不断增加, 多任务学习的整体准确率也将持续提升.

然而,在大多数情况下

7.1. 相关的任务

传统的做法是将相关任务设为多任务学习中的补充任务。为了更好地理解相关任务的具体内容,我们将提供一些典型的示例说明。Caruana提出采用预测道路属性的任务来辅助预测自动驾驶汽车的行驶路线;Zhang等人将头部姿势估计与面部属性推断相结合,用以提升面部界标检测的效果;Liu等人则致力于同时进行查询分类与网页搜索优化;Girshick提出的方法是联合预测图像中物体类别及其位置坐标;Arık的研究则聚焦于语音合成参数的精确预测。

7.2. 对抗

一般情况下,在缺乏直接标注信息的情况下(即标签数据不可用),我们可以获取与目标任务相反的任务实例(即所谓的对抗任务)。这些数据则可借助对抗损失进行优化(其中抗arial损失通过梯度反转层来最大化模型输出的差异性)。近期研究表明,在领域自适应场景中这一方法表现尤为突出(即该设置在该方面的应用取得了显著成效)。具体而言,在这种设定下,抗arial任务的目标是判断输入实例所属的类别归属(即预测输入的领域)。值得注意的是,在反向操作抗arial任务的过程中(即逆转其梯度),抗arial任务本身的损失会得到增强(这种增强对于主任务而言是有益的),因为它迫使模型无法通过表示形式来区分不同类别归属。

7.3. 提示

如所述之前的内容,请注意以下几点:第一,在机器学习领域中有一种称为多任务学习的方法能够有效提取仅靠单一任务难以捕捉到的关键特征。这一目标可以通过向模型提供适当提示信息来实现。在自然语言处理领域这种策略已成为最新研究热点。其中一种高效的方法就是提供提示信息以引导模型关注特定特征。研究者们首次尝试以情感标记作为补充指标用于情感分类模型,并通过引入实体识别错误标签来提升命名实体识别系统的性能。

7.4. 聚焦注意力

同样地,在注意力分配中使用辅助任务是一种有效的策略。例如,在转向学习中,默认的学习框架往往忽视车道标记这一关键信息源(因为这些标记只占据图像的一小部分区域,并且其存在性并不稳定)。然而,在将车道标记预测作为辅助任务时,则迫使模型去学习并表示这些重要的特征点(即车道线的位置)。类似地,在面部识别领域中,则可以通过以下两种方法来实现这一目标:1)通过检测器直接定位面部特征点;2)利用深度学习算法自动提取关键特征用于识别过程。

7.5. 量化平滑

在诸多应用场景中, 训练目标通常表现为量化形式, 即尽管连续度量可能更为理想, 但在某些情况下标签被定义为离散类别. 当需要人工评估以获取数据时, 比如预测疾病风险(如低风险、中等风险及高风险)或情感分析(如正面情感、中性情感及负面情感)等情况适用. 这表明, 在上述场景下采用较低量化程度的辅助任务可能有助于提升模型性能.

7.6. 预测输入

在某些情况下,在尝试将某些特征作为输入时会发现这是一项不可行的方案。然而,在这种情况下(即它们对预测所需的目标没有帮助),也许这些特性仍能辅助任务学习。在这种情况下(即特性无法作为有效的输入),它们反而能够被用作输出结果。Caruana和de Sa给出了几个值得参考的具体案例。

7.7. 利用未来预测当前

通常情况下,在经过某种分析或计算后才会获得某些属性或信息。例如,在自动驾驶汽车领域中,在车辆通过障碍物和车道线后才能实现对这些属性的精确测定;类似地,在肺炎预测案例中,在完成后续研究后才能纳入其他医学试验的结果作为参考依据。额外的数据无法直接作为模型的输入特征,在训练阶段也无法直接用于构建模型的基础参数;然而,在训练过程中可以通过引入这些额外的数据来补充模型所需的知识储备

7.8. 表示学习

多任务学习中,辅助任务的目标就是让模型学会在主要任务之间共享或有用的表示形式。目前讨论的所有辅助任务都是隐式执行过的:它们都与主要的任务密切相关;因此,在某种程度上来说;如果能够有效执行这些辅助任务;可能会帮助模型更好地建立有用的知识体系。更为明确的方式是可以实现的;例如;利用现有的方法都可以用来帮助模型学习出可迁移性很强的知识;比如Cheng等人以及Rei所采用的语言建模对象就可以起到这一作用;同样地;自动编码器对象也可以用作辅助任务的一种选择

7.9. 什么辅助任务是有帮助的?

在本节中,我们探讨了若干辅助任务及其应用前景。这些辅助task即使在只关注单一task时仍然可以纳入多task learning框架中进行训练与评估。目前尚不清楚的是,在实践中哪些auxiliary tasks能够发挥有效作用。选择合适的auxiliary tasks往往依赖于这样一个假设:auxiliary tasks与main task在某些方面具有相关性 。这种选择对准确预测main task的结果是有帮助的。

但是,在何时应将两个学习任务视为相似或相关这一问题上仍存在疑问

尽管在理解任务间相关性的研究中已取得了一些初步成果(Early theoretical advancements in task correlation studies), 但该领域方面的最新研究则相对较少(relatively limited advancements in the latest research). 传统的认为它们之间的相似性仅以二元的方式存在(Traditional perspectives view task similarity as a binary concept)这一观点实际上并不完全准确(this perspective is not entirely accurate). 通过使模型能够直接学习所有不同任务之间的共同特征和潜在关联(By enabling the model to directly learn shared characteristics and latent relationships across diverse tasks), 我们或许能够在一定程度上缓解这种现状(we may be able to mitigate this issue to some extent). 然而, 目前仍需对多任务学习中定义一个更为普适性的相似性概念(Despite this, we still need to establish a more universal definition of task similarity within multi-task learning frameworks), 这样我们才能更好地确定哪些关系应被纳入考量(in order to determine which relationships should be included in such considerations).

最近Alonso和Plank的研究表明具有紧凑且均匀标签分布的伴随任务在解决NLP序列标记问题方面具有显著效果。此外进一步研究表明,在主任务中若采用非平稳伴随任务则可能更快实现主任务目标并获得更好的收益。然而目前的研究局限于特定场景下的实验分析仅有初步揭示了神经网络多任务学习机制的可能性。

8. 结论

这篇综述系统梳理了其发展历程,并详细探讨了近年来在深度学习领域中对多任务学习的研究与应用取得了显著进展。尽管这种技术已经运行了20年并在神经网络框架下广泛存在许多固定参数共享模式(hard parameter sharing),但近年来有关如何实现知识共享的最佳实践仍存在合理的探索空间。此外,在现有文献中对于如何有效组织与关联各类信息(包括相似性、关系层次结构及其对提升模型性能的重要性)的相关研究仍显不足。为此我们需要进一步深入探究这一方向以更好地理解其在深层神经架构中的泛化表现机制

全部评论 (0)

还没有任何评论哟~