深度学习:开山之作AlexNet论文详解

本文深入解析了AlexNet卷积神经网络的设计理念与关键技术,包括ReLU激活函数、GPU并行训练、局部响应归一化及数据增强等方法。通过这些技术,AlexNet在ImageNet竞赛中取得了突破性成绩。

AlexNet是一个卷积神经网络,由亚历克斯·克里泽夫斯基(Alex Krizhevsky)设计,与伊尔亚‧苏茨克维(Ilya Sutskever)和克里泽夫斯基的博士导师杰弗里·辛顿共同发表,而辛顿最初抵制他的学生的想法。

AlexNet参加了2012年9月30日举行的ImageNet大规模视觉识别挑战赛,达到最低的15.3%的Top-5错误率,比第二名低10.8个百分点。原论文的主要结论是,模型的深度对于提高性能至关重要,AlexNet的计算成本很高,但因在训练过程中使用了图形处理器(GPU)而使得计算具有可行性。

目录

问题背景

本文主要贡献

ImageNet 数据集

ImageNet 和 ILSVRC

ILSVRC 数据集

本文中对图像的预处理

网络架构

ReLU 激活函数

GPU 并行训练

局部响应归一化 (LRN)

交叠池化 (Overlapping Pooling)

模型的详细结构

减缓过拟合

数据增强

Dropout

实验结果


问题背景

本文在如下背景下展开研究:

  1. 当前图像分类任务主要是通过传统机器学习的方法进行的,模型容量小,且不易于实际使用,容易过拟合
  2. 实际目标多样性丰富,标记好的数据集的样本数越来越大,需要更高容量的模型进行学习。而卷积神经网络可以通过调节深度和宽度来控制模型的容量,且充分利用了自然图像的局部空间相关性的特性
  3. GPUs 等硬件以及高度优化的 2-D 卷积运算的实现发展成熟,以足够强大,可用于训练较大的 CNNs,结合如今的大数据集,不用过分担心过拟合

本文主要贡献

本文的模型,即 AlexNet,其由多伦多大学,Geoff Hinton 实验室设计,夺得了 2012 年 ImageNet ILSVRC 比赛的冠军,且其 top-5 错误率远低于第二名,分别为 15.3% 和 26.2%

AlexNet 在深度学习发展史上的历史意义远大于其模型的影响。在此之前,深度学习已经沉寂了很久。在此之后,深度学习重新迎来春天,卷积神经网络也成为计算机视觉的核心算法模型。

本文的主要内容有:

  1. 使用 ReLU 激活函数加速收敛
  2. 使用 GPU 并行,加速训练。也为之后的分组卷积(group convolution)理论奠定基础。
  3. 提出局部响应归一化(Local Response NormalizationLRN)增加泛化特性 (虽然被后人证明无效 )
  4. 使用交叠池化 (Overlapping Pooling) 防止过拟合
  5. 提出Dropout,数据增强等手段防止过拟合

ImageNet 数据集

ImageNet 和 ILSVRC

(截至论文发表时)ImageNet 数据集包含 15 million (1500 万) 张标记好的高分辨率的图像,其包含仅 22000 个类别。从 2010 年始,作为 Pascal Visual Object Challenge 的一部分,一个新的年度比赛 ImageNet Large-Scale Visual Recognition Challenge (ILSVRC) 拉开帷幕。

ILSVRC 数据集

ILSVRC 使用 ImageNet 数据集的子集,包含 1000 类目标,每类目标约 1000 张图片,共 1200 万张训练图像,50000 张验证图像,15000 张测试图像。

ILSVRC-2010 是唯一一届公开测试集 label 的ILSVRC,因此我们的实验测试在该数据集上进行。评判标准为 top-1 和 top-5 错误率,分别表示预测类别正确,以及正确值位于预测概率最高的 5 个类别时的错误率。

本文中对图像的预处理

由于 ImageNet 包含多种分辨率,而我们的模型要求输入维度固定,因此,我们对图像进行处理,使之固定为256*256。具体做法是,对于给定的图像,我们先将其进行缩放,使其短边尺寸为 256,然后进行中心裁剪,得到输入图像。除了在每个像素上,减去整个数据集对应像素上的均值之外,我们并未对输入图像进行其他预处理。

网络架构

ReLU 激活函数

在此之前,激活函数主要使用的是f(x) = tanh(x)以及f(x) = \frac{1}{1 +(e^-x)^-1}, 但是这些都是饱和激活函数,输入值处于饱和区时,其梯度几乎为 0,因此收敛极慢!

针对这一问题,我们使用线性整流单元 (Rectified Linear Units,ReLU) 作为激活函数,即:f(x) = max(0,x) 。其不存在饱和区,导数始终为 1,梯度更大,计算量也更少,因此收敛更快。

如下图所示,为 tanh 和 ReLU 的收敛速度对比:

GPU 并行训练

单个 GTX 580 GPU 只有 3GB 的显存,这将限制可训练的网络的最大尺寸和 batch size 大小。因此,我们将模型分为两部分,分布到两个 GPU 上进行训练。由于 GPU 之间可以直接进行数据交换,而无需经过主机的内存,因此可以很容易进行并行。

该方式大大的加快了训练速度,具体细节详见模型的详细结构

该技术使得 top-1 和 top-5 误差分别降低 1.7% 和 1.2%

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值