AlexNet网络具体介绍

AlexNet网络

  • 1、AlexNet 网络的创新点
    • 1.1、使用了ReLU作为激活函数
    • 1.2 LRN(局部相应归一化)
    • 1.3 Dropout
    • 1.4使用了重叠池化层
    • 1.5 并行使用了多GPU训练
  • 2、AlexNet网络结构

1、AlexNet 网络的创新点

AlexNet是发表在《ImageNet Classification with Deep Convolutional Neural Networks》使用了LSVRC-2010竞赛中的数据集并取它的子集,对1000个不同的类进行分类,并取得了历史性的提高。

1.1、使用了ReLU作为激活函数

AlexNet网络具体介绍_第1张图片
相比sigmoid,tanh,ReLu有一下优点:

  • 1 计算开销少,论文中提到非饱和非线性变换(Relu)比饱和非线性变换(Sigmoid、tanh)梯度计算的要更快,(饱和是激活函数有界,而非饱和是指无界)
  • 2 训练收敛速度快,Relu会让一部分神经元的输出为0,这样就照成了网络的稀疏性,减少了参数。

激活函数要使用非线性变换,而Relu是一个线性的分段函数,似乎有问题。可以指出,对于每一个样本ReLU做的是不同线性变换,而对整个样本集而言着可以理解为非线性的。

简单来说,不同训练样本中的同样的特征,在经过神经网络学习时,流经的神经元是不一样的(激活函数值为0的神经元不会被激活)。这样,最终的输出实际上是输入样本的非线性变换。

1.2 LRN(局部相应归一化)

  1. 可以方便后面数据的处理
  2. 可以加快程序的收敛
  3. 保证输出数据中数值小的值不被吞食
    公式:
    b x , y i = a x , y i / ( k + α ∑ j = m a x ( 0 , i − n / 2 ) m i n ( N − 1 , i + n / 2 ) ( a x , y j ) 2 ) β b_{x,y}^{i}=a_{x,y}^{i}/(k+\alpha\sum_{j=max(0,i-n/2)}^{min(N-1,i+n/2)}(a_{x,y}^{j})^2)^\beta bx,yi=ax,yi/(k+αj=max(0,in/2)min(N1,i+n/2)(ax,yj)2)β
    其中: α 、 β 、 n 、 k 是 超 参 数 、 a x , y i 表 示 第 i 个 卷 积 核 , 上 的 ( x , y ) 位 置 处 的 值 , N 是 总 通 道 数 , b 是 归 一 化 结 果 \alpha、\beta、n、k是超参数、a_{x,y}^{i}表示第i个卷积核,上的(x,y)位置处的值,N是总通道数,b是归一化结果 αβnkax,yiix,y)Nb
    LRN是让局部响应值大的点,去抑制在局部响应中小的点,来加强特征对比。在随后的研究中慢慢地被NP所替代。

1.3 Dropout

  • 防止过拟合
    随机删除网络中某些节点(让节点出现概率为0)达到稀疏化网络结构,提高网络的泛化能力。

1.4使用了重叠池化层

采用Overlapping Pooling提升了预测精度,同时一定程度上可以缓解过拟合。
正常池化(步长默认为卷积核大小,s=2,z=22)
重叠池化(s=2,z=3
3)

1.5 并行使用了多GPU训练

  • 减少网络的训练时间
  • 让训练大型网络成为可以能
    论文讲网络拆分成上下两部分(1,2,3在不同gpu计算,3,4又整合到一个gpu计算,5,6,7,8又分开计算),网络一共有8层,5层卷积,3层全连接。
    AlexNet网络具体介绍_第2张图片

2、AlexNet网络结构

AlexNet网络具体介绍_第3张图片
箭头所指即为这八层(即8种变换),图中 224 ∗ 224 ∗ 3 224*224*3 2242243应该是 227 ∗ 227 ∗ 3 227*227*3 2272273 论文中说是227
为了方便,这里我直接看成在一个GPU上映射,前5层为卷积层,后3层全连接:

  • 第1 层卷积:
    输入(227,227,3)—>卷积计算(n=96,s=4,size=(11,11,3),p=0)—>(55,55,96)—>LRN(大小不变)—>max pooling(s=2,size=(3,3))—>(27,27,96)
  • 第2 层卷积:
    输入(27,27,96)—>卷积计算(n=256,s=1,size=(5,5,96),p=1)—>(27,27,256)—>LRN(大小不变)—>max pooling(s=2,size=(3,3))—>(13,13,256)
  • 第3层卷积:
    输入(13,13,256)—>卷积计算(n=384,s=1,size=(3,3,256),p=1)—>(13,13,384)—>无 LRN、max pooling
  • 第4层卷积:
    输入(13,13,384)—>卷积计算(n=384,s=1,size=(3,3,256),p=1)—>(13,13,384)—>无 LRN、max pooling
  • 第5 层卷积:
    输入(13,13,384)—>卷积计算(n=256,s=1,size=(3,3,384),p=1)—>(13,13,384)—>无 LRN—>max pooling(s=2,size=(3,3))—>(6,6,256)
  • 第6、7、8层全连接神经元个数均为4096
  • 输入(9216,1)特征向量—>(4096,9216)—>(4096,4096)–>(1000,4096)–>(1000,1) softmax损失函数计算
  • 最终输出(1000,1)一张图像的所有一千种类可能概率。

上面我对AlexNet网络笔记,有错误地方希望大家指正- -!

你可能感兴趣的:(深度学习,深度学习,神经网络,计算机视觉)