内容提要:
1 AlexNet
2 VGGNet(Visual Geometry Group)
3 两个网络对比
一,AlexNet
一、原理部分
整个网络从左往右,有一个输入,然后有8个需要训练的层,前5个为卷积层,最后3层为全连接层。分别说说这些层:
第一个层 conv_1:
输入的图片大小为2242243,有96个卷积核,尺寸为1111,即111196。步长(stride)为4。按照无padding的方式,输出的每个feature map尺寸应该为5454。
第二个层 conv_2:输入的tensor为272796,卷积核的大小为: 55256,步长为1,如果按照无padding=VALID,输出feature map为:2323256,跟最大池化后的结果不符,因此倾向于认为本文都是padding=SAME。因此,步长为1时,feature map为2727256。同样紧跟ReLU,和LRN层.尺寸不变,最大池化层,核大小为33,步长为2,因此feature map为:1313256。
第三个层 conv_3:输入tensor为1313256,卷积核 33384,步长为1,feature map为:1313384。加上ReLU,尺寸不变,无最大池化层。
第四个层 conv_4:配置和conv_3一样,因此feature map为:1313384
第五个层 conv_5:输入tensor为1313384,卷积核 33256,步长为1,feature map为:1313256。加上ReLU,尺寸不变。最大池化层,核大小33,步长为2,因此feature map:66256,(13-3+1)/2,向上取整6。
第六个层 fc_1:卷积核66256*4096,输出为一维向量,4096个元素。加上ReLU,尺寸不变。
第七个层 fc_2:输出为一维向量,4096个元素。加上ReLU,尺寸不变。
第8个层 fc_3:输出为一维向量,1000个元素。最后一层用了softmax,输出为1000个种类的各类概率值。
二、评价部分
- AlexNet使用ReLU代替了Sigmoid,其能更快的训练,同时解决sigmoid在训练较深的网络中出现的梯度消失,或者说梯度弥散的问题。 激活函数的主要作用是引入了非线性。
- 随机dropout一些神经元,以避免过拟合,
- 在以前的CNN中普遍使用平均池化层average pooling, AlexNet全部使用最大池化层 max pooling, 避免了平均池化层的模糊化的效果,并且步长比池化的核的尺寸小,这样池化层的输出之间有重叠,提升了特征的丰富性.
- 提出LRN层,局部响应归一化,对局部神经元创建了竞争的机制,使得其中响应较大的值变得更大,并抑制反馈较小的. (强者更强,弱者更弱)
- 使用了gpu加速神经网络的训练。
- 使用数据增强的方法缓解过拟合现象。据增强是扩充了样本集。
二,VGGNet(Visual Geometry Group)
- 简介
VggNet一共有六种不同的网络结构,但是每种结构都有含有5组卷积,每组卷积都使用3x3的卷积核,每组卷积后进行一个2x2最大池化,接下来是三个全连接层.在训练高级别的网络时,可以先训练低级别的网络,用前者获得的权重初始化高级别的网络,可以加速网络的收敛.
2.卷积网络配置
结构:训练时,输入是大小为224224的RGB图像,预处理只有在训练集中的每个像素上减去RGB的均值。图像经过一系列卷积层处理,在卷积层中使用了非常小的感受野(receptive field):33,甚至有的地方使用11的卷积,这种11的卷积可以被看做是对输入通道(input channel)的线性变换。卷积步长(stride)设置为1个像素,33卷积层的填充(padding)设置为1个像素。池化层采用max-pooling,共有5层,在一部分卷积层后,max-pooling的窗口是2*2,步长是2。一系列卷积层之后跟着全连接层(fully-connected layers)。前两个全连接层均有4096个通道。第三个全连接层有1000个通道,用来分类。所有网络的全连接层配置相同。所有隐藏层都使用ReLu。VGGNet不使用局部响应标准化(LRN),这种标准化并不能在ILSVRC数据集上提升性能,却导致更多的内存消耗和计算时间。
配置:A网络(11层)有8个卷积层和3个全连接层,E网络(19层)有16个卷积层和3个全连接层。卷积层宽度(通道数)从64到512,每经过一次池化操作扩大一倍。
三,AlexNet和VGGt对比
模型名 | AlexNet | VGG | |
初入江湖 | 2012 | 2014 | |
层数 | 8 | 19 | |
Top-5错误 | 16.4% | 7.3% | |
Data Augmentation | + | + | |
Inception(NIN) | – | – | |
卷积层数 | 5 | 16 | |
卷积核大小 | 11,5,3 | 3 | |
全连接层数 | 3 | 3 | |
全连接层大小 | 4096,4096,1000 | 4096,4096,1000 | |
Dropout | + | + | |
Local Response Normalization | + | – | |
Batch Normalization | – | – |