参考:https://www.bilibili.com/video/BV1V54y1B7K3?p=10&spm_id_from=pageDriver&vd_source=36b7c8676358c983e1f9ccb9cfe786b4
经典网络
AlexNet
AlexNet贡献
主体贡献
- 提出了一种卷积层加全连接层的卷积神经网络结构
- 首次使用ReLU函数做为神经网络的激活函数
- 首次提出Dropout正则化来控制过拟合
- 使用加入动量的小批量梯度下降算法加速了训练过程的收敛;
- 使用数据增强策略极大地抑制了训练过程的过拟合;
- 利用了GPU的并行计算能力,加速了网络的训练与推断。
经典网络解析-AlexNet
层数统计说明:
- 计算网络层数时仅统计卷积层与全连接层;
- 池化层与各种归一化层都是对它们前面卷积层输出的特征图进行后处理,不单独算作一层
AlexNet共8层:
- 5个卷积层(CONV1———CONV5)
- 3个全连接层(FC6-FC8)
第一层CONV1
MAX POOL1
局部相应归一化层NORM1作用(效果不明显,不再流行)
第二层CONV2
全连接层(矩阵展开为向量)
重要说明:
- 用于提取图像特征的卷积层以及用于分类的全连接层是同时学习的;
- 卷积层与全连接层在学习过程中会相互影响、相互促进
AlexNet重要技巧
- Dropout策略防止过拟合;
- 使用加入动量的随机梯度下降算法,加速收敛;
- 验证集损失不下降时,手动降低10倍的学习率;
- 采用样本增强策略增加训练样本数量,防止过拟合;
- 集成多个模型,进一步提高精度。
训练过程
卷积层作用
- 从数据中学习对于分类有意义的结构特征
- 描述输入图像中的结构信息
- 描述结果存储在256个6×6的特征响应图里
ZFNet
2013年
经典网络解析——ZFNet
与AlexNet网络结构基本一致!
主要改进:
- 将第一个卷积层的卷积核大小改为了7×7;
- 将第二、第三个卷积层的卷积步长都设置为2;
- 增加了第三、第四个卷积层的卷积核个数。
VGG
VGG网络贡献:
- 便用尺寸更小的3x3卷积核串联来获得更大的感受野
- 放弃使用11x11和5x5这样的大尺寸卷积核
- 深度更深、非线性更强,网络的参数也更少
- 去掉了AlexNet中的局部响应归一化层(LRN)层
串联卷积层,非线性能力更强,小尺寸模板参数更少
预处理:减去图像RGB均值(对图像每个点求)
经典网络解析———VGG
VGG16
- 13个卷积层与3个全连接
- 分为5段conv1,,…, conv5,每一段中卷积层的卷积核个数均相同
- 所有卷积层均采用3x3的卷积核及ReLU激活函数;
- 所有的池化层都采用最大池化,其窗口大小为2x2、步长为2;
- 经过一次池化操作,其后卷积层的卷积核个数就增加一倍,直至到达512
- 全连接层中也使用了Dropout策略
VGG19
思考
且非线性能力更强
7^2
5^2
3^2
1^2
GoogleNet
GoogleNet的创新点:
- 提出了一种Inception结构,它能保留输入信号中的更多特征信息;
- 去掉了AlexNet的前两个全连接层,并采用了平均池化,这一设计使得GoogLeNet只有500万参数,比AlexNet少了12倍;
- 在网络的中部引入了辅助分类器,克服了训练过程中的梯度消失问题
每一层尽可能保留输入信号中的信息
11 压缩
33感受野
5*5感受野
max pooling最强特征扩张
保留了原图更多信息
1*1 卷积 降低运算量
纹理表示中空间位置不重要
避免梯度消失
- 原因——虽然ReLU单元能够一定程度解决梯度消失问题,但是并不能完全解决深层网络难以训练的问题。离输出远的层就不如靠近输出的层训练得好。
- 结果——让低层的卷积层学习到的特征也有很好的区分能力,从而让网络更好地被训练,而且低层的卷积层学到了好的特征也能加速整个网络的收敛。
- 网络推断——仅利用网络最后的输出作为预测结果,忽略辅助分类器的输出。
ResNet
保留感兴趣信息,并增强。
前向传递有效
反向传递有效(梯度不会消失,因为加号,至少保留x^0)
残差结构
1 * 1卷积降低深度
33
11通道数升回去,才能与X相加
ResNet网络结构
小结
- 介绍了5种经典的卷积神经网络AlexNet、ZFNet、VGG、GoogLeNet和ResNet
- 残差网络和Inception v4是公认的推广性能最好的两个分类模型
- 特殊应用环境下的模型: 面向有限存储资源的SqueezeNet以及面向有限计算资源的MobileNet和ShuffleNer