多任务学习可以运用到许多的场景。
首先,多任务学习可以学到多个任务的共享表示,这个共享表示具有较强的抽象能力,能够适应多个不同但相关的目标,通常可以使主任务获取更好的泛化能力。
此外,由于使用了共享表示,多个任务同时经行预测时,减少了数据来源的数量,以及整体模型参数的规模,使预测更加搞效。在多个领域中,可以利用多任务学习来提高效果或者性能,比如垃圾邮件过滤、网页检索、自然语言处理、图像识别、语音识别等等。
相关任务
- 如果两个任务是处理输入的相同函数,但是在任务信号中加入独立的噪声处理,那么很明显这个任务就是相关任务。
- 如果两个任务用于预测同一个个体的属性的不同方面,那么这些任务比预测不同个体的属性的不同方面更相关。
- 两个任务共同训练时能相互帮助,并不是意味着他们时相关的。例如,通过在后向传播网络的一个额外输出中加入噪声可以提高泛化能力,但是噪声任务与其他任务不相关。
多任务学习
如下图所示,展示了4个独立的神经网络,每个神经网络都是一个针对同样输入仅有一个输出的函数。误差反向传播被应用于这些网络来独立训练每个网络,由于这些网络相互之间没有任务连接欸,因此其中一个网络学习到的特征并不能帮助另一个学习网络。这里称之为任务学习。
下图展示了以恶搞输入于上图中的4个网络一致的单一网络,但该网络由4个输出,每