MTL多任务学习-Multitask Learning
把多个相关(related)的任务(task)放在一起学习
多任务学习时,多个任务之间的模型空间(Trained Model)是共享的
多任务学习涉及多个相关的任务同时并行学习,梯度同时反向传播,多个任务通过底层的共享表示(shared representation)来互相帮助学习,提升泛化效果。
学习过程中通过一个在浅层的共享表示来互相分享、互相补充学习到的领域相关的信息,互相促进学习,提升泛化的效果。
MTL*享表示有两种方式:
(1)基于参数的共享(Parameter based):比如基于神经网络的MTL,高斯处理过程。
(2)基于约束的共享(regularization based):比如均值,联合特征(Joint feature)学习(创建一个常见的特征集合)。
有效的原因
1、引入其他任务噪声可以提高学习的泛化(generalization)效果
2、单任务学习时,梯度的反向传播倾向于陷入局部极小值。多任务学习中不同任务的局部极小值处于不同的位置,通过相互作用,可以帮助隐含层逃离局部极小值
3、添加的任务可以改变权值更新的动态特性,可能使网络更适合多任务学习。比如,多任务并行学习,提升了浅层共享层(shared representation)的学习速率,可能,较大的学习速率提升了学习效果。
4、多个任务在浅层共享表示,可能削弱了网络的能力,降低网络过拟合,提升了泛化效果。