版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhq9695/article/details/84889790
目录
如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔~我会非常开心的~
0. 前言
有时,在构建模型的时候,可以利用多个任务的共性,来更好的构建模型。
本篇主要简要介绍,迁移学习和多任务学习。
1. 迁移学习
迁移学习,顾名思义,将已有的知识迁移至另一个任务。
学习完任务 A 后,利用已学习到的知识,进一步的学习任务 B 。
因为任务 A 低层次的特征通常与任务 B 相似,所以可进行迁移学习。
方法 1:训练完任务 A 后,将最后一层的权重初始化,或者在最后增加几层,然后训练任务 B 。
方法 2:可以下载他人训练好的网络,然后更改输出层 softmax ,将前面层已经训练好的参数冻结,不进行更改,只训练输出层。如果数据较多,则可以冻结较少的层。
何时有用:
- 任务 A 和任务 B 有相同的输入
- 任务 A 的数据量比任务 B 的多
- 任务 A 的低层特征有可能助于任务 B
2. 多任务学习
在多分类任务中,多个输出单元只有一个是 1 ,其余都是 0 ,表示输出的类别。
而在多任务学习中,输出单元有多个 1 ,可理解为多标签。
同时预测样本属于多个类别,以此同时学习多个任务。
何时有用:
- 多个任务可以共享低层次的特征
- 每个任务的数据量相近
- 有能力训练一个非常大的神经网络
如果这篇文章对你有一点小小的帮助,请给个关注,点个赞喔~我会非常开心的~