多任务学习顾名思义就是在某一进程中实现多个任务,举例来说,我们在看到一辆自行车时,会看到自行车的两个车轮,颜色,车辆标志,车辆形状,这基本都是在同一时间就可以获得的信息。而对于深度学习模型面对各式各样的需求,也需要一个模型能够实现多个任务。

首先介绍深度学习的两个简单的模型构建方式:

多任务学习基础的模型结构大致为:
多任务学习在深度学习中简单使用

(1)交替学习

交替学习的概念为模型存在共享层,但是在训练过程中是交替进行的,且损失函数和优化函数是独立的。例如给定一个选择比例(随机选择或者固定概率选择),让任务1的一个batch在此次进行训练,让任务2的一个batch在下次进行训练。

多任务学习在深度学习中简单使用

从图中可以看出,交替训练是损失函数并未相加,而是独立存在,因此只要使其能够在训练时实现交替训练。

交替训练适合对于每个任务都有不同的数据集,例如英语-德语和英语-法语,那么就可以使用。但是很明显的是交替训练会导致模型具有很大的偏向性,会使得模型偏向于数据量较大的任务。

 

(2)联合学习

多任务学习在深度学习中简单使用

联合训练的概念为在最终的输出中,将两个任务的损失函数相加,然后使用同一个优化函数,这样训练较快,且对于同一个数据集要求其输出有两个相关性的任务输出,联合学习是比较合适的;且联合学习对于任务具有一定的相关性是好处的。

 

相关文章:

  • 2022-12-23
  • 2021-05-19
  • 2021-09-20
  • 2022-12-23
  • 2021-07-11
  • 2022-12-23
猜你喜欢
  • 2021-12-04
  • 2021-07-02
  • 2021-05-27
  • 2021-09-19
  • 2021-10-04
  • 2021-09-02
  • 2021-04-13
相关资源
相似解决方案