Survey | 多任务学习综述

网友投稿 1029 2022-05-29

1.简介

深度学习模型通常需要大量有标签数据才能训练出一个优良的分类器。但是,包括医学图像分析在内的一些应用无法满足这种数据要求,因为标注数据需要很多人力劳动。在这些情况下,多任务学习(MTL)可以通过使用来自其它相关学习任务的有用信息来帮助缓解这种数据稀疏问题。

微众银行首席智能官、香港科技大学讲座教授、国际人工智能联合会理事会主席、吴文俊人工智能杰出贡献奖获得者杨强教授是多任务学习的先驱。杨强教授在本文中对MTL进行了研究总结,根据任务的性质,MTL被分类成多任务监督学习、多任务无监督学习、多任务主动学习、多任务强化学习、多任务在线学习和多任务多视角学习,杨强教授总结了每一类中的代表性方法,并重点讨论了多任务监督学习的五种方法,之后分析了并行和分布式MTL,最后提出在未来的MTL研究中还需解决的问题。

2. 多任务学习

定义中有两个基本因素:一是任务的相关性,任务相关性是基于对不同任务关联方式的理解;二是任务的定义,在机器学习中学习任务主要包含分类和回归等监督学习任务、聚类等无监督学习任务、半监督学习任务、主动学习任务、强化学习任务、在线学习任务和多视角学习任务,因此不同的学习任务对应于不同的MTL设置。

在MTL定义的基础上,由于大多数MTL研究都是在这种背景下进行的,因此主要研究监督学习任务,再对其它类型学习任务进行回顾。

3. 多任务监督学习

为了描述MTL中的任务相关性,需要解决三个问题:何时共享、共享什么以及如何共享。其中“何时共享”决定使用单任务模型还是多任务模型来解决多任务问题;“共享什么”确定所有任务之间共享什么信息,通常包括特征、实例和参数三种信息;“如何共享”确定实现信息共享的具体方法,目前的MTL研究主要集中在基于特征和基于参数的两种形式,其中,基于特征形式的方法主要有特征学习方法,基于参数形式的方法主要有低轶方法、任务聚类方法、任务关系学习方法和分解法。

3.1特征学习方法

MTL中多个任务是相关的,可以假设不同任务之间拥有共同的特征表示,这个共同的特征表示是从原始数据中学习到的,依据原始特征表示和学习后的特征表示之间的关系,可以将特征学习方法分为特征转换方法和特征选择方法。

1)特征转换方法

在特征转换方法中,对原始特征进行线性或非线性变换得到共同的特征表示,学习到的特征表示中的每一个特征都不同于原来的特征,主要介绍四种模型:多层前馈神经网络、多任务特征学习(MTFL)、多任务稀疏编码方式和深层模型。

多层前馈神经网络结构如图1所示,输入层接收来自所有任务的训练样本,并且输出层具有多个输出单元,每个任务对应一个输出单元,隐藏层的输出可以看作是多个任务学习的共同特征表示,从原始表示到学习的特征表示的转换取决于连接输入和隐藏层的权重以及隐藏层中采用的激活功能单位。

图1 多任务前馈神经网络结构图

与多层前馈神经网络不同,多任务特征学习(MTFL)方法是在正则化框架下设计的,前者的隐含层表示可能是冗余的,而MTFL方法中所使用的平方变换矩阵可以避免出现冗余现象。与MTFL相似的一种方法是多任务稀疏编码方式,用于学习特征的线性变换。上述模型的特征变换只有一个层次,而一些深层的MTL模型可以有多层特征转换,许多深层MTL方法假设任务共享前几个隐藏层,然后在后续层中设有特定于任务的参数。

2)特征选择方法

特征选择方法通过不同的标准消除无用的特征,选择原始特征的子集作为所有任务的特征表示,这使得特征选择法具有更好的可解释性,当特征转换法的变换矩阵为对角0/1矩阵时,特征选择法可视为特征转换法的特例,其中值为1的对角线对应于所选的特性。如果应用程序需要一些决策支持,则特征选择方法比特征转换法可能更合适。

3.2低轶方法

由于多个任务之间相互关联且不同任务的特征之间存在相关性,假设不同任务的模型参数共享一个低轶空间,可以显式地学习权重矩阵的低轶空间,也可以通过凸正则化或非凸正则化隐式地实现这一点。其中,利用迹范数作为正则元使权重矩阵具有较低的轶是一种常见的方式,谱k支持范数是对迹范数正则化的一种改进,还有研究者提出使用基于矩阵迹范数的张量迹范数作为正则元来识别参数张量的低轶结构。

3.3任务聚类方法

在任务层次上进行聚类来识别任务簇,每个任务簇由相似的任务组成,可以捕获同一簇中任务之间的正相关。第一个被提出的基于任务聚类的算法是加权最近邻分类器,在训练时针对每个任务都会通过调整权重实现最小化类内距离并最大化类间距离来实现任务分类,在所有任务中获取集群结构后,将同一个簇中多个任务的训练数据集合在一起,学习最终加权最近邻分类器。任务聚类法的局限在于会忽略不同簇中任务之间的负相关,此外,即使这类方法中的一些方法可以自动确定集群的数量,但它们中的大多数仍然需要交叉验证等模型选择方法来确定它,这可能带来更多的计算成本。

3.4任务关系学习方法

任务关系学习方法可同时学习模型参数和成对任务之间的关系。任务的相关性可以通过一些定量关系(如任务相似性、任务协方差等)来量化,在早期对MTL的研究中,通常会利用任务的相似性来设计正则化器指导学习多个任务。多任务高斯过程(MTGP)用于从数据中自动学习任务关系,为解决MTGP中的过拟合问题又提出多任务广义t过程,非贝叶斯模型有任务关系学习模型(MTRL)等,局部学习模型有k近邻(kNN)分类器等,通过这些任务关系学习方法学习到的任务关系有助于我们观察任务之间的相关性,提高任务的可解释性。

3.5分解方法

该方法假设权重矩阵W可以分解成两个或多个分量矩阵,通过对分量矩阵的不同设计可提出不同的分解模型,可以消除所有任务的不重要特征。分解法可看作一种‘深层’方法,‘深’体现在模型参数方面,是其他基于参数的方法的扩展,可通过配置多层次的参数,建立更复杂的任务结构——树结构。

4.多任务无监督学习

多任务无监督学习的训练集仅由数据样本构成,其目标是挖掘数据集中所包含的信息。多任务无监督学习主要关注多任务聚类,聚类是指将一个数据集分成多个簇,其中每簇中都有相似的实例,因此多任务聚类的目的是通过利用不同数据集中包含的有用信息来在多个数据集上同时执行聚类。

5.多任务半监督学习及多任务自主学习

多任务半监督学习能够利用未标记数据中包含的几何信息,多任务自主学习目的是选择有代表性的无标记数据查询预示,二者均可利用未标记数据中包含的有用信息来进一步提高MTL的性能,常见模型有半监督多任务学习、多任务自主学习和半监督多任务自主学习模型。

6.多任务强化学习

强化学习研究的是如何在环境中采取行动以最大化累积奖励,多任务强化学习中,当环境相似时,不同的强化学习任务可以使用相似的策略来进行决策。

7.多任务多视角学习

多视角学习假设每个数据点与多组特征相关联,其中每个集合对应一个视角,并且它通常利用包含在多个视角中的信息来执行监督或非监督任务,多任务多视角学习是将多视角学习扩展到多任务设置,其中每个任务都是一个多视角学习问题。

8.并行和分布式MTL

当任务数量很大时,如果我们直接应用一个多任务学习器,那可能就会有很高的计算复杂度。现在计算机使用了多 CPU 和多 GPU 架构,其计算能力非常强大。所以我们可以使用这些强大的计算设备来设计并行 MTL 算法,从而加速训练过程。

在某些情况中,用于不同任务的训练数据可能存在不同的机器中,这会使传统的 MTL 模型难以工作。如果将所有的训练数据都可转移到一台机器上,这会造成额外的传输和存储成本。设计能够直接处理分布在多台机器上数据的分布式 MTL 模型是更好的选择。

9. MTL的应用

Survey | 多任务学习综述

MTL在不同领域有不同应用,其模型各不相同,解决的应用问题也不尽相同,但在各自的领域都存在着一些特点。在计算机视觉中图像和视频数据通常位于高维空间,使用特征选择方法可识别低维表示,提高学习效率,深层模型在计算机视觉问题上也表现出良好的性能。在生物信息学和健康信息学中,学习模型的可解释性在某种意义上更为重要,所以通常使用特征选择来识别出有用的特征。在语音和自然语言处理中,数据呈现出顺序结构,这使得基于RNN的深层模型发挥了主导作用。web应用具有大规模数据,因此这个领域倾向于简单的浅层模型或基于增强的组件,从而进一步提高性能。

10. 讨论

本文中提出在未来的研究中,有几个主要的问题有待解决:第一,离群任务与其它任务无关,当它们共同学习时,所有任务的性能都会受到影响,虽然有一些方法可以缓解异常值任务带来的负面影响,但是对由此产生的负面影响的研究缺乏原则性的方法和理论分析。第二,当所有任务相关时,深层学习方法是强大的,但是它容易受到噪声和离群任务的影响,这会极大地降低性能,需要更灵活、健壮的多任务深度模型。第三,现有的研究主要集中在监督学习任务上,只有少数研究聚焦于半监督学习、自主学习等其它学习任务,需要为适应和扩展这些任务设计合适的模型。

参考资料

论文链接:https://arxiv.xilesou.top/abs/1707.08114

机器学习 神经网络

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:关于 Linux中NFS的一些笔记
下一篇:使用Windows AIK构建静默安装镜像
相关文章