迁移学习 特征提取微调

迁移学习 特征提取&微调

  • 迁移学习
    • 特征提取
    • 微调

迁移学习

迁移学习是把预训练好的模型迁移到新的任务上。

在神经网络迁移学习中,有两个应用场景:特征提取和微调

特征提取

特征提取:冻结除了全连接层之外的左右网络的权重。最后一个全连接层被替换为具有随机权重的新层,并且仅训练该层。

在特征提取中,可以在预先训练好的网络结构后,修改或添加一个简单的分类器,将源任务上的预先训练好的网络作为另一个目标任务的特征提取器,只对最后增加的分类器参数进行重新学习,而预先训练好的网络参数不会被修改或冻结。

微调

微调:使用预训练网络初始化网络,而不是随机初始化,用新数据训练部分或整个网络。

微调的大致过程:在预先训练过的网络上添加新的随机初始化层,此外,预先训练的网络参数也会被更新,但会使用较小的学习率以防止预先训练好的参数发生较大的变化。

常用的方法是固定底层的参数,调整一些顶层或具体层的参数。好处:减少训练参数的数量,有助于克服过拟合。

具体实现见博客PyTorch 预训练模型,保存,读取和更新模型参数以及多 GPU 训练模型(转载 极市平台).

内容及图片来自于:《Python深度学习 基于Pytorch》