赞
踩
目录
一、迁移学习的基本思路、原理和示例
1、基本思路
2、简单原理
3、皮肤癌示例
二、迁移学习的具体实施
2.1 迁移学习的应用条件
2.2 迁移学习应用的4种场景
1、小数据集,相似数据
2、小数据集,不同的数据
3、大型数据集,相似数据
4、大型数据集,不同的数据
一、迁移学习的基本思路、原理和示例
1、基本思路
可以使用在ImageNet中实验过的CNN运用到实际应用中。
2、简单原理
最后的层会比较具体化,有小鸟,就会有检测小鸟的过滤器;有轮子,就会有检测轮子的过滤器。
那么,我们保留前面的层,仅添加新的层并训练即可。当然,你的训练集较小,并且与ImageNet越相似,则效果越好。
3、迁移学习示例:诊断皮肤癌
斯坦福大学团队,利用迁移学习方法,开发了诊断皮肤癌的CNN。
利用在ImageNet上训练好的Inception。
(1)
(2)
(3)
训练时,除了最后添加的层,其他层的参数都采用已经训练好的参数做为初始值,并在训练中不断优化参数。
这种“具有不同的最后分类层级,并且细调网络参数的方法”对于数据集很大,且与ImageNet相差很大,效果很好。
二、迁移学习的具体实施
2.1、迁移学习的应用条件
迁移学习取决于以下两个条件:
使用迁移学习的方法将各不相同。有以下四大主要情形:
演示网络包含:3个卷积层和3个完全连接层。
第一层检测边缘;第二层检测形状;第三层检测更高级的特征。
2.2 迁移学习应用的4种场景
1、小数据集,相似数据
为了防止过拟合,保留原来网络层的权重不变。由于数据集相似,因此,更高级别的特征也相似,则包含高级别特征检测的层也保留。
2、小数据集,不同的数据
由于数据集比较小,保留原来层的参数,用来防止过拟合。另外,数据集不同,因此更高级的特征不同,则不用保留更高级的层。
3、大型数据库,相似数据
大数据集时,过拟合问题不严重,因此可以重新训练权重。因为数据集类似,则更高级特征也类似,因此整个网络都可以用。
4、大型数据库,不同的数据
可以随机初始化权重训练,也可以把之前的权重做为初值进行训练,加快训练速度。
参考:
1、论文How transferable are features in deep neuralnetworks?:系统地分析了预先训练过的 CNN 中的特征的可迁移性
2、论文Dermatologist-level classification of skin cancer with deep neural networks:Sebastian Thrun 的癌症检测 CNN
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。