浅谈卷积神经网路的模型结构
其它机器学习、深度学习演算法的全面系统讲解可以阅读《机器学习与应用》,清华大学出版社,雷明著,由SIGAI公众号作者倾力打造,自2019年1月出版以来已重印3次。
- 书的购买链接
- 书的勘误,优化,源代码资源
PDF全文链接:浅谈卷积神经网路的模型结构
浅谈卷积神经网路的模型结构
本文特约作者 vicFigure
上海交通大学
20世纪末,卷积神经网路就已经在MNIST手写体数字识别任务上展现出了优势,但由于数据量和硬体性能的限制,始终没有在其他任务中发挥作用。随著硬体计算能力,存储能力的提升,卷积神经网路在21世纪取得了爆发性的进展。同时训练数据量也在成百倍甚至千倍的增长,更促进了卷积神经网路的进步。从LeNet5,到AlexNet,经过了20年的探索,而从AlexNet开始之后的短短几年,VGG,GoogLeNet,ResNet,DensNet等结构纷纷涌现,不断刷新卷积神经网路在各种标准数据集上的精度,同时也拓宽了卷积神经网路的应用范围:从分类任务,物体识别,图像分割这些基本任务,拓展到人脸识别,人体关键点检测,三维重建等实际的应用场景。今天笔者就来浅谈一下最近几年卷积神经网路的经典结构。
AlexNet
AlexNet是2012年ILSVRC分类任务比赛的冠军,首次证明了卷积神经网路在更加复杂的分类任务(相比于MNIST和Cifar数据集)上有著极大的优势。AlexNet的结构特征如下:
第一,AlexNet网路由有5层卷积层,和3层全联接层构成,最后一个全联接层得到各类别概率。第二,AlexNet使用ReLU作为激活层,代替tanh,作者经过实验,发现ReLU激活层的网路相对于tanh,在cifar10数据集上收敛速度更快。此后ReLU便成为了卷积神经网路标准的激活函数,在后面的结构中依然使用ReLU激活函数。第三,AlexNet使用LRN(Local Response Normalization)作为归一化函数,如式1.1所示。第四,AlexNet使用了3个max pooling层来做下采样,同时第一层卷积的卷积核大小设定为 ,滑动步长为4,也有下采样的作用。第五,AlexNet采用Dropout层来减少过拟合问题。
式中 表示特征图中第 i个通道,(x,y)位置的值,N表示当前特征图的通道数,k,n,α,β是预先定好的超参数,其中n表示利用相邻的n个通道来做归一化。在AlexNet 中作者取 。虽然式子看起来比较复杂,其本质就是特征图每个位置的值,仅利用其相邻通道对应位置处的值来做归一化,而不依赖同通道总相邻像素位置的值。在AlexNet中LRN接在ReLU激活层之后。(在BN层出现之后,BN层基本取代了LRN层的地位)