专栏首页mathorAlexNet论文阅读

AlexNet论文阅读

论文下载

这篇论文的背景作者在参加2010年的ILSVRC比赛,取得了冠军

摘要主要介绍了其神经网络的结构——5个卷积层(每个卷积层($convolutional\ layers$)后面都跟有池化层($max-pooling\ layers$))和三个全连接层,最后是一个1000维的softmax。然后作者还提到一个比较有意思的想法:"为了避免全连接层的过拟合,我们采用一种名为$dropout$的正则化方法"

引言和数据集的部分都不重要,这里就略过了

第三部分开始简略介绍了AlexNet的架构,其实就和摘要说的是一样,然后作者说他会把他网络中新奇的点接下来按照重要程度(重->轻)依次说明

首先作者认为他网络最重要的部分是激励函数的选取。传统的激励函数是$tanh(x)$,他认为$tanh(x)$模型收敛太慢,所以改用收敛更快的$Relu$函数,右边的图中虚线是$tanh(x)$函数,实线是$Relu$函数。使用$Relu$的四层神经网络比$tanh$在达到25%的误差时快6倍

接着作者认为他们多CPU并行计算很重要,这一块主要是硬件,我个人感觉不是很重要,所以略过

局部响应归一化。"Relu不需要将输入层的数据进行归一化防止其饱和"(这里我暂时不是很懂,先放一放)

重叠池化。传统池化的窗口大小$z*z$中的$z$等于池化的步长$s$。作者设置$z<s$,这样每次滑动窗口的时候,总有一部分是重叠的(这次池化窗口的内容包含部分上次池化窗口的内容)。与重叠相比,两者的输出维度是相同的,但是采用重叠池化更难过拟合。关于重叠池化,当时作者提出来可能还算比较新颖,但其实目前(到2019年)大部分CNN都用的这种方法

整体架构。文章中GPU部分我就直接略过了,直接看这个图很好理解。

第1卷积层使用96个核对224 × 224 × 3的输入图像进行卷积,核的大小是11 × 11 × 3,步长是4

第2卷积层使用用第1卷积层的输出(响应归一化和池化)作为输入,并使用256个核进行卷积,核的大小是5 × 5 × 48

第3,4,5卷积层互相连接,中间没有接入池化层或归一化层

第3卷积层有384个核,核大小为3 × 3 × 256,与第2卷积层的输出(归一化的,池化的)相连

第4卷积层有384个核,核大小为3 × 3 × 192

第5卷积层有256个核,核大小为3 × 3 × 192

每个全连接层有4096个神经元

最后一层输出是一个softmax,用于产生1000类标签的概率

减少过拟合

数据增强。原本一张图是256 × 256的,但是作者把一张图当作十张图来用。在测试时,网络会提取5个224 × 224的图像块(四个角上的图像块和中心的图像块)和它们的水平翻转(因此总共10个图像块)进行预测,然后对网络在10个图像块上的softmax层进行平均。

第二种数据增强的方法包括改变训练图像的RGB通道的强度。具体地说就是,对整个ImageNet训练集上对RGB像素值集合执行PCA(降维),之后对于每个训练图像,添加多个找到的主成分,其大小与相应的特征值成正比,乘以一个随机变量,这个随机变量服从高斯分布,平均值为零,标准差为0.1。因此对于每幅RGB图像像素$I_xy = [I^R_{xy} , I^G_{xy} , I^B_{xy} ]^T$,加上下面的数量:

$$ [p_1, p_2, p_3][\alpha_1\lambda_1, \alpha_2\lambda_2, \alpha_3\lambda_3]^T $$

$p_i$、$\lambda_i$分别是RGB像素值3 × 3协方差矩阵的第$i$个特征向量和特征值,$α_i$是前面提到的随机变量。对于某个训练图像的所有像素,每个$α_i$只获取一次,直到图像进行下一次训练时才重新获取。这个方案近似抓住了自然图像的一个重要特性,即光照的颜色和强度发生变化时,目标身份是不变的

失活。"以0.5的概率对每个隐层神经元的输出设为0。那些“失活的”的神经元不再进行前向传播并且不参与反向传播。因此每次输入时,神经网络会采样一个不同的架构,但所有架构共享权重。这个技术减少了复杂的神经元互适应,因为一个神经元不能依赖特定的其它神经元的存在。因此,神经元被强迫学习更鲁棒的特征,它在与许多不同的其它神经元的随机子集结合时是有用的。在测试时,我们使用所有的神经元,但将它们的输出乘以0.5,对指数级的许多失活网络的预测分布进行几何平均,这是一种合理的近似。"

学习细节。作者使用的梯度下降模型是SGD,batch size为128,动量(momentum)为0.9,权重衰减为0.0005,权重$w$的更新规则是

$$ v_{i+1} := 0.9 · v_i - 0.0005 · \varepsilon · w_i - \varepsilon · \langle \frac{\partial L} {\partial w} |_{w_i}\rangle _{D_i} \\ w_{i+1} := w_i + v_{i + 1} $$

$i$是迭代索引,$v$是动量变量,$ε$是学习率(learning rate),$\langle \frac{\partial L} {\partial w} |_{w_i}\rangle _{D_i}$是目标函数对$w$,在$w_i$上的第$i$批微分$D_i$的平均

"我们使用均值为0,标准差为0.01的高斯分布对每一层的权重进行初始化。我们在第2,4,5卷积层和全连接层将神经元偏置(biases)初始化为常量1。这个初始化通过为ReLU提供正输入加速了早期的学习阶段。我们在剩下的层将神经元偏置初始化为0"

以上就是这篇论文的重点部分

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 匈牙利算法(二分图最大匹配问题)

    匈牙利算法用于求解无权二分图(unweighted bipartite graph)的最大匹配(maximum matching)问题

    mathor
  • CS231n笔记:通俗理解CNN

    上图中CNN要做的事情是:给定一张图片,是车是马还是飞机未知,现在需要模型判断这张图片里具体是一个什么东西

    mathor
  • 第四届蓝桥杯决赛B组C/C++——高僧斗法

    mathor
  • 为什么要使用卷积

    假设你有32X32X3的图像,一共3072个特征点,卷积成28X28X6的图像,一共4704个特征点。如果使用传统的网络,你需要3072*4704 ≈\appr...

    Steve Wang
  • 深度学习(6)——卷积神经网络cnn层级结构CNN特点卷积神经网络-参数初始化卷积神经网络过拟合解决办法

    DC童生
  • ICCV2019 Oral论文:基于图嵌入的深度图匹配(已开源)

    由上海交通大学研究团队独立完成的论文Learning CombinatorialEmbedding Networks for Deep Graph Matchi...

    小白学视觉
  • ICCV2019 Oral论文:基于图嵌入的深度图匹配(已开源)

    由上海交通大学研究团队独立完成的论文Learning CombinatorialEmbedding Networks for Deep Graph Matchi...

    SIGAI学习与实践平台
  • Understanding Convolution in Deep Learning(四)

    我们将在下面看到为何卷积内核会被称为过滤器以及卷积操作通常被描述为过滤操作的原因。

    哒呵呵
  • 卷积网络基础知识---Depthwise Convolution && Pointwise Convolution && Separable Convolution

    https://yinguobing.com/separable-convolution/#fn2

    用户1148525
  • 卷积网络基础知识---Group Convolution分组卷积

    Group Convolution分组卷积,以及Depthwise Convolution和Global Depthwise Convolution

    用户1148525

扫码关注云+社区

领取腾讯云代金券