AlexNet快速回顾

早期曾粗略的读过AlexNet的相关文献,但是在后续的学习中发现很多有意思的idea来自Alex大神的《ImageNet Classification with Deep Convolutional Neural Networks》,故在此快速回顾Alexnet论文的精华。

AlexNet主要包含6个方面:ReLU,GPU并行运算,LPN,Overlapping Pooling,总体架构,过拟合。

1. ReLU Nonlinearity

文章提出一种non-saturating nonlinearity非饱和非线性激活函数:ReLU,相比于一般神经元的激活函数sigmoid函数或者tanh函数收敛速度快,效果好,在目前深度学习中占据主导地位。自此后,各种激活函数的改进的idea源源不断。

2. 双GPU并行运算

这是初读论文中最容易被忽视的一部分,当时GPU显存受限,而现在很多人往往忽略作者的这一细节。在轻量级神经网络中,为了减少模型参数或移动嵌入式的计算量,很多学者借鉴了AlexNet的群卷积运算,如ResNeXt、shuffleNet等。

在本文中,为提高运行速度和提高网络运行规模,作者采用双GPU的设计模式。并且规定GPU只能在特定的层进行通信交流。其实就是每一个GPU负责一半的运算处理。

3. LRN局部响应归一化

ReLU本来是不需要对输入进行标准化,但本文发现进行局部标准化能提高性能。但是大家对LRN层的评价不高,此处忽略。此后在激活函数前通常用batch normalization取代。

4. Overlapping Pooling

pooling块间有重叠,作者使用的池化窗口是大小为3×3,相邻窗口步幅为2的窗口。在输出尺寸相同的情况下,与使用大小为2×2,相邻窗口步幅为2的非重叠池化窗口相比,重叠池化窗口能够分别将TOP-1的错误率降低0.4%,TOP-5的错误率降低0.3%。在提取特征的时候,其输入会受到相邻pooling单元的输入影响。在训练阶段有避免过拟合的作用。

5. framework

这里写图片描述

整个网络有8个需要训练的层,前5个为卷积层,最后3层为全连接层.

其中第三层卷积与所有全连接处两组(个)GPU进行信息交互。其余层均与组内数据相连。

其余细节如下:

  • RPN层第1,2个卷积层后;
  • Max pooling层在RPN层以及第5个卷积层后。
  • ReLU在每个卷积层以及全连接层后。
  • 卷积核大小数量:tensorflow表示形式

    conv1:11*11*3*96

    conv2:5*5*48*256

    conv3:3*3*256*384

    conv4: 3*3*192*384

    conv5: 3*3*192*256

6. 过拟合

数据增益(水平映射)+dropout

至此,AlexNet回顾完毕,因能力一般水平有限,欢迎指正。

猜你喜欢

转载自blog.csdn.net/qq_38742161/article/details/85126914
今日推荐