ResNet优点
- 相比传统的卷积神经网络如VGG复杂度降低,需要的参数下降
- 可以做到更深,不会出现梯度弥散的问题
- 优化简单,分类准确度加深由于使用更深的网络
- 解决深层次网络的退化问题
解决梯度弥散
常见方法:batch normalization
学习原理
对于传统的方法是直接去学习输入到输出的映射,而深度卷积残差网络是去学习输入到(输出-输入)的映射。这样就有了一个先验信息:输出一定是可以由输入的一部分组成的。事实上证明,这个先验信息是很有用的,这对应于相等映射(也就是要学习的参数都为0的情况),而传统网络在学习参数都为0的情况是输出0映射。对于传统网络而言,要想学习一个相等映射,再深的网络由于其本身的非线性性,很难学出来。
事实上,改变网络结构的方式有很多,一种是改变每一层的内容,比如将卷积改为全连接,改变卷积核的大小,而ResNet改变的是神经网络的连接方式,将前一层(输入)直接连接到后一层(输出),这样实现残差的学习,而参数相比传统的VGG一点都没有多,但是结构改了。
实现细节
- 图像数据上,random采样224*224,水平翻转
- 采用batch normalization
- 使用0.0001的weight normalization
- 使用0.9的momentum
- mini_batch 256张