Transfer Learning with Keras
今天介绍两种方法的Keras实现,一种是直接将预训练好的模型当做特征提取器,只重新训练最上面的全连接层;另一种是重新训练CNN模型的一部分,以及全连接层,这个方法被称作 。
第一种Transfer Learning
导入预训练模型:
由于 ,我们没有导入最后的两层全连接层,只导入了卷积层。值得注意的是,最后一层输出是7×7×512 。
建立自己的模型:
我们建立了一个简单的正向传播网络,softmax输出3种分类。
训练模型:
第二种Fine-Tuning
导入预训练模型:
冻结需要的层:
建立新模型:
训练模型:
两者的主要区别在于是否控制冻结范围。
今天主要讲迁移学习,所以具体导入数据和分析结果的代码我就没贴上来了,有需要可以查看参考链接:https://www.learnopencv.com/keras-tutorial-transfer-learning-using-pre-trained-models/https://www.learnopencv.com/keras-tutorial-fine-tuning-using-pre-trained-models/
领取专属 10元无门槛券
私享最新 技术干货