一、CNN经典网络结构介绍
1、LeNet
整个卷积神经网络的开山之作,是卷积神经网络的现代雏形。有7层网络,含卷积层-池化层-卷积层-池化层-3个全连接层。1998年由LeCun提出(卷积神经之父)。
缺点明显:网络层数浅,无激活层。
论文:Lecun,Yann,et al.“Gradient-based learing applied to document recognition.”
2、 AlexNet
ImageNet2012分类竞赛冠军,ImageNet竞赛上第一次基于卷积神经网络模型得到冠军。AlexNet相对于LeNet,网络更深,有8层网络,使用11*11的卷积核或滤波器,同时第一次引入ReLu激活层,在全连接层中引入了Dropout层防止过拟合。网络结构复杂,因计算机量大,GPU计算力不够,所以使用2个GPU。
论文:Imagenet classification with deep convolutional netural networks.
3、 VGGNet
ImageNet2014亚军,有16-19层网络,使用了更小的滤波器和更深的网络。使用33卷积滤波器和22的最大池化层,层叠小的滤波器与层叠大的滤波器感受野是相同的。证明了:网络深有助于提升模型效果,还证明了小卷积核意义更大。如:1个55的卷积核,与2个33的卷积核效果相同。
参考:Simonyan, K. , & Zisserman, A. . (2014). Very deep convolutional networks for large-scale image recognition. Computer Science.
4、GoogleNet
ImageNet2014冠军,也称InceptionNet。通过对Inception进行堆叠,构成了一个含有22个权重层的GoogLeNet,比AlexNet参数少12倍。沿用了VGGNet的思想,希望使网络结构更深。而随着网络结构更深,参数会更多,计算复杂度也会增加。因此采用InceptionNet模块(Inception的做法就是将卷积层的完全连接变成稀疏连接,而且受到生物神经学的启发,利用多个大小不一致的滤波器,在多个尺度上来提取特征,然后再连接到一个共同的输出),使得网络参数大幅减少,可以看作很多个Inception模块的串联,且无全连接层,降低了计算量,也增加了网络对多个尺度的适应性。同时,Inception模块也从V1—V4进行不断优化,加深了网络结构。
1)V1
运行四个并行的滤波器(即四个通道),分别为11,33,5*5,有不同的感受野,对输入进行卷积和池化,最后将输出结果拼接在一起输出。优点:增加了网络宽度(4个通道),增加了网络对尺度的适应性(不同的滤波器感受野不同)。
2)V2
增加了3个11的卷积核,分别在33,55的卷积核前面,max pooling后面。问题:11卷积核的作用?可以降维,同时降低计算复杂度。
3)V3
在不改变感受野的同时,同时减少参数的情况下,用1n和n1的卷积核代替n*n的卷积核。可以理解成将二维改成两个一维。
4)V4
将Inception与残差结合,得到Inception-ResNet-v1,Inception-ResNet-v2,Inception-v4网络。
5)关于GoogleNet核心思想
GoogLeNet的思想动机是增加模型的规模:深度和宽度。更大的模型意味着更多的参数,计算资源的消耗增加,模型也更容易过拟合,因此并不能盲目的增加模型的规模。
1*1卷积核,多尺寸卷积聚合(提取特征更丰富)
5、ResNet
ImageNet2015冠军,有效地解决了深度神经网络难以训练的问题,并且可以达到1000层网络。通过引入了跨层连接,解决了梯度回传消失的问题。
参考:He K, Zhang X, Ren S, et al. Deep residual learning for image recognition[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 770-778.
二、相关概念
1、卷积核
2、感受野
3、全连接
4、池化
5、梯度回传消失
6、Hebbin赫布原理
两个神经元或神经元系统,如果总是同时兴奋,就会形成一种组合。如:狗看到肉流口水,识别肉的神经元和唾液分泌的神经元相互促进,用在Inception结构中,就是相关性强的特征聚在一起。