迁移学习和Fine Tuning

https://arxiv.org/pdf/1411.1792.pdf

迁移学习transfer learning的概念:

打破深度学习需要大量的训练数据的传统观念,其实我们可以站在巨人的肩膀上,借助预训练好的模型,泛化到自己的数据集上,如下图。
迁移学习和Fine Tuning注:冻结模型的意思是在训练的时候保持参数不变

1、迁移学习的几种情况:

迁移学习和Fine Tuning迁移学习和Fine Tuning(1)如果数据集很小,同时与原数据集很相似,我们只要对数据集的最后线性分类层进行修改就行
迁移学习和Fine Tuning(2)如果数据集很小,同时与原数据集不同,我们不需要高层卷积层,因为高级卷积层提取的是原数据集的特化高级特征
迁移学习和Fine Tuning(3)如果数据集很大,且与原数据集相似,我们就不用对预训练模型进行冻结了,我们可以将预训练模型的参数作为模型初始化参数,然后对这个模型参数进行微调
迁移学习和Fine Tuning(4)如果数据集很大,且与原数据集不同,方法同(3)
迁移学习和Fine Tuning

2、神经网络的迁移学习是普遍的

迁移学习和Fine Tuning注:word2vec 词向量是google提出的,用多维向量俩表示词的语义信息

3、迁移学习并不是万能的,需要具体问题具体分析,何凯明提出预训练模型和随机初始化模型所得结果差不多,但是预训练模型在最开始会加速收敛。我们应该具体问题具体分析

迁移学习和Fine Tuning

4、当数据集很小时,怎么办呢?

迁移学习和Fine Tuning5、迁移学习的理论基础:底层,中层卷积层已经将特征提取出来,高层卷积层提取的是特化的高级特征,比如在imageNet数据集上预训练的模型高层卷积层提取的是imageNet数据集的特化高级特征。
迁移学习和Fine Tuning预训练模型已经对底层普适特征进行提取,我们只要对最后的全连接层进行训练调整

http://web.stanford.edu/group/blau/pdfs/Esteva_Thrun_2017.pdf

应用实例

在上面论文中,就是使用inception-V3 预训练模型来进行迁移学习,对皮肤癌进行分类的一个实例
迁移学习和Fine Tuning迁移学习和Fine Tuning医疗诊断的标准:
迁移学习和Fine Tuning
迁移学习和Fine Tuning