多任务学习

一、单任务学习和多任务学习

  多任务学习是和单任务学习对应的一种机器学习方法。

  1. 单任务学习

在这里插入图片描述

  在单任务学习中,认为不同任务之间是不具有关联性的。因此,每个模型的参数都是独立训练的。这样的学习方法有两个缺陷:

  • 由于每个任务中的训练数据有限,因此所训练出的模型并不能具有很好的泛化性。
  • 由于没有考虑任务之间的关联性, 缺乏任务之间共享信息的机制,使得模型训练的过程中学习能力下降。

  因此,诞生了多任务模型。

在这里插入图片描述
  在多任务学习中,主要认为不同任务之间实际上是具有一定的关联性,因此,多任务学习采用的方法是将不同任务之间的训练数据集成在一起,然后联合同时训练多个不同任务的模型参数,提高模型的学习能力,增强模型的泛化性。

多任务学习的构建原则

  • 建模任务之间的相关性
  • 同时对多个任务的模型参数进行联合学习,挖掘其中的共享信息;
  • 考虑任务之间的差异性,增强模型的适应能力。

多任务学习的两种主要方式

  • 基于参数的共享:例如,神经网络隐藏节点的共享,这种方法主要通过挖掘不同任务之间在浅层所共享的隐藏节点特征来达到任务之间相关性建模的目的。
  • 基于正则化约束的共享:例如:均值约束、联合特征学习等,实际上就是在模型中引入一些正则化的先验,通过先验对模型的约束来建模不同任务之间的相关性。

多任务学习和其他算法之间的关系图
在这里插入图片描述


二、几种常见多任务学习

  1. 基于参数共享的多任务学习(硬共享) — 神经网络节点共享
    在这里插入图片描述

  在单任务学习中,每一个任务都对应了一个网络,也就是说,不同的任务建立了不同的神经网络来学习不同的模型参数实现任务的输出。这样的方法造成每个任务都独立训练一个模型参数,也就是说,任务一训练的参数对其他任务没有任何影响。同时任务一中提取的浅层特征对其他任务也没有相应的服务。所以几个任务之间提取的浅层特征没有达到共享的目的。

在这里插入图片描述
  在多任务学习中,让同一个神经网络具有多个不同的输出,每一个输出对应不同的任务。这样的方式可以在任务的反馈中,通过反向传播机制共同的为不同的任务训练同一个模型参数。通过挖掘不同任务之间的相关性的特征,我们在底层共享同同一个参数来提取能够为所有任务服务的共享特征达到相关性建模的目的。

实例

  1. Zhanpeng Zhang, Ping Luo, Chen Change Loy, and Xiaoou Tang. Facial landmark detection by deep multi-task learning, ECCV, 2014
    在这里插入图片描述

  在右侧有7个相关任务,它们在左侧共享同一个模型参数提取能够应用于不同任务的共享特征,这样就实现了通过神经网络的方式在浅层共享同一个参数为不同的任务服务,建立任务之间的相关性,挖掘它们之间的潜在共享信息的目的。在这个网络中,通过最后不同的输出层建立不同任务之间的差异性。

  1. 基于正则化的多任务学习(软共享)

  每个任务都有自己的模型自己的参数。模型参数之间的距离是正则化的,以便鼓励参数相似化。

2.1 均值约束共享
在这里插入图片描述

  既然任务之间具有一定的相关性,但是不知道这样的相关性如何描述?那么简单认为不同模型之间的相关性实际上是通过模型参数相互接近来建模的

  但是,我们又不知道任务一和任务二更接近,还是某几个任务之间更接近?因此,为了捕获这样一种相关性,就让每一个任务的模型参数都能够接近所有任务模型参数的均值,这样就保证了不同的任务的模型参数相互之间的距离并不是很远。

  这样的方法是一个比较直观简单的方法,可能在实际中并不是很适用,但是这种方法的提出对于基于正则化约束的多任务学习模型提供了一个较好的思路。

2.2 联合特征约束的多任务学习
在这里插入图片描述

  这个方法是认为不同的任务之间的模型参数可能会共享样本的某一个共同特征集合。如图所示,Y的每一列对应不同的任务,W的每一列对应每个任务的模型参数,图中表明了每个任务都挑选了样本的第1,2,3,5,6,9个特征。通过这样的方式可以建立不同任务之间的相关性达到多任务学习的目的。

下面通过例子说明这种假设为什么是成立的?

实例:现在的任务是预测五个不同学校的学生成绩。
在这里插入图片描述

  那么现在我们五个不同的模型参数,每一个模型都能够预测对应学校的学生成绩。左侧是提取的学生的特征。
对于这样的一个回归任务,我们可以认为不同任务之间实际上是具有共享特征集合的多任务学习模型。因为我们认为影响学生成绩的主要因素是上次成绩,上次排名,睡觉时间和父母教育背景这四个因素。尽管每个任务是预测不同学校的学生,但是这个例子中可以直观地感受到每一个学校的模型参数实际上都应该与一些直观的影响成绩的特征是有关的。所以在右边模型参数上都选了第1,2,3,7个特征。

  所以上面假设是合理的。但是这样的相关性要求在实际中可能显得有些严格,只针对某一些特定任务,实际任务往往没有这种严格的形式。比如对于第一个学校来说,按照学生身高进行排座,个子小的同学坐前面,有可能这个因素会影响成绩,因此身高可能是会影响第一个学校的成绩的因素。

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值