参考资料:https://cloud.tencent.com/developer/article/1357065
我是菜鸡,内容是个人在阅读博客时的理解,随手一记
概述
通过共性知识的学习达到一种泛化,在泛化的基础上对具体问题具体化(概述部分)
迁移什么
迁移学习就是要迁移那些共性特征数据与信息,从而避免再次学习这些知识,实现快速学习。简单点说迁移学习主要是实现卷积层共性特征迁移。
怎么迁移
充分说明迁移学习+fine-tuning是个训练卷积神经网络的好方法。
何时使用
有相似的任务需要完成的时候,我们可以使用预训练的相关模型,在此基础上进行迁移学习即可
# Caffe模型
https://github.com/BVLC/caffe/wiki/Model-Zoo
# tensorflow模型
https://github.com/tensorflow/models
在实际使用中我们把预训练的网络称为base-network,把要迁移的前n层复制到一个到目标网络(target network),然后随机初始化目标网络的余下各层、开始训练进行反向传播、反向传播时候有两种方法可以使用:
把前面n层冻结forzen、只对后面的层进行训练,这种方法适合少的样本数据,而且随着层冻结n数值增大、网络性能会下降,这种是单纯的迁移学习。
不冻结前n层、全程参与训练不断调整它们的参数,实现更好的网络性能这种方法称为迁移学习+fine-tuning
什么是fine-tune
https://blog.csdn.net/weixin_42137700/article/details/82107208