迁移学习和微调深度卷积神经网络

原文链接:https://blog.csdn.net/bigbzheng/article/details/52372946
(本文只是挑选自己不熟悉的知识点进行标注)

关键词:深度卷积神经网络(DCNN)、迁移学习、微调(fine-tuning)

目前研究已经证明,DCNN在自动分析大量图像和识别图像特征方面是非常有效的,他可以将图像分类的误差率降到最低。DCNN很少从头训练因为得到足够大样本的特定领域的数据集并不是那么容易,同时由于现代DCNN在GPU上训练需要耗时2-3周,加州大学伯克利分校的视觉和学习中心发布了一些最终DCNN检查点。在这篇文章中我们使用一个预训练的网络:GoogleNet。其是基于大量真实图像的image net图像库预训练的网络,我们将学习的imageNet的权重迁移作为网络的初始权重,然后微调这些训练的通用网络使它们能够识别出眼睛的荧光血管造影图像,从而提高对DR眼病的预测。
标准的图像分类技术所用的一般工作流程如下:噪声去除和增强对比度的图像预处理技术、特征提取技术、分类、预测

DCNN非常适合用来分析图像信息:
DCNN可以训练有很多层的网络、叠加多个层可以建立改进的特征空间、初始层用来学习最基本的特征(例如颜色、边缘等)、后面的层可以用来学习更高级的特征(针对输入数据集的特征)、最终层的特征被送入分类层
微调:迁移学习策略取决于多种因素,但最重要的两个是信数据集的大小以及新数据与原数据集的相似度。谨记网络前面几层的DCNN特征更加泛型(generic),在后面几层中更加具有数据集特定性(dataset-specific)
微调DCNN:可以通过持续的反向传播来微调预训练的DCNN的权重。微调DCNN的所有层根据训练集的大小是可能的,或者只是保持前面的一些曾固定(由于担心过拟合)而只微调网络的一些高层部分是可能的。可以这么做是因为DCNN一些早期特征中所包含的特征更为一般化(如边缘检测器或彩色斑点检测器)可以在许多任务中发挥作用;而DCNN中更靠后的层会越来越特定于该DR数据中所包含的分类的细节
迁移学习的限制:因为使用了预训练的网络,所以在模型架构方面收到了一点点限制。比如说,不能随意移除预训练网络中的卷积层,但由于参数共享的关系,可以很轻松的在不同空间尺寸的图像上运行一个预训练网络。这在卷积层和池化层情况下是显而易见的,因为他们的前向函数独立于输入内容的空间尺寸,在全连接层的情形中,这仍然成立,因为全连接层可被转化成一个卷积层。
学习率:假设预训练的DCNN的权重是相对比较好的,因此可以给正被微调的DCNN权重使用较小的学习率,不希望过快或过于改变他们。

你可能感兴趣的:(迁移学习和微调深度卷积神经网络)