AlexNet ImageNet

译自英文

AlexNet是由亚历克斯·克里热夫斯基、伊利亚·苏茨克维和杰弗里·辛顿于2012年在多伦多大学开发的深度卷积神经网络,它以15.3%的top-5错误率赢得了ImageNet大规模视觉识别挑战赛,显著推动了深度学习在计算机视觉领域的发展。

AlexNet是一种用于图像分类的卷积神经网络架构,因其在ImageNet大规模视觉识别挑战赛(ILSVRC)中的表现而声名鹊起。它能将图像分类到1,000个不同的对象类别中,并被认为是深度卷积网络在大规模视觉识别中首个被广泛认可的应用。

该模型于2012年由Alex Krizhevsky与Ilya Sutskever及其博士导师Geoffrey Hinton在多伦多大学合作开发,包含6000万个参数和65万个神经元。原始论文的主要结论是,模型的深度对其高性能至关重要,尽管计算成本高昂,但通过利用图形处理单元(GPU)进行训练使其变得可行。

架构

AlexNet包含八层:前五层是卷积层,其中一些后接最大池化层,最后三层是全连接层。除最后一层外,网络被分成两个副本,每个副本在一张GPU上运行,因为网络无法容纳在单个Nvidia GTX 580 3GB GPU的显存中。整个结构可以写成(CONV → RN → MP)2 → (CONV3 → MP) → (FC → DO)2 → Linear → softmax,其中CONV = 卷积层(使用ReLU激活),RN = 局部响应归一化,MP = 最大池化,FC = 全连接层(使用ReLU激活),Linear = 全连接层(无激活),DO = 丢弃。

值得注意的是,卷积层3、4和5彼此连接,没有进行任何池化或归一化。它使用了非饱和的ReLU激活函数,其训练效果优于tanh和sigmoid。该架构影响了后续大量深度学习研究,尤其是在将神经网络应用于计算机视觉方面。

训练

ImageNet训练集包含120万张图像。该模型使用两张Nvidia GTX 580 GPU(各3GB)训练了90个周期,耗时五到六天。这些GPU在float32下的理论性能为1.581 TFLOPS,发布时售价为500美元。AlexNet每次前向传播需要约1.43 GFLOPs。基于这些数值,两张GPU在理想条件下理论上每秒能够执行超过2200次前向传播。

数据集图像以JPEG格式存储,占用27GB磁盘空间。训练期间,神经网络在每张GPU上占用2GB内存,并在系统内存中占用约5GB。GPU负责训练,而CPU负责从磁盘加载图像并对图像进行数据增强。

AlexNet使用动量梯度下降进行训练,批量大小为128个样本,动量为0.9,权重衰减为0.0005。学习率从10−2开始,每当验证误差似乎停止下降时,就手动将其降低10倍;训练期间共降低三次,最终达到10−5。

它使用了两种形式的数据增强,均在CPU上即时计算,因此“计算成本为零”:

  • 首先将ImageNet中的每张图像缩放,使其较短边长度为256。然后裁剪出中央的256×256区域并进行归一化(将像素值除以255,使其落在0到1之间,然后减去[0.485, 0.456, 0.406],再除以[0.229, 0.224, 0.225])。这些是ImageNet的均值和标准差,因此这会使输入数据白化。
  • 从256×256裁剪中提取随机的224×224区域(及其水平翻转),将训练集大小增加了2048倍。
  • 随机沿图像像素RGB值的三个主方向移动每张图像的RGB值。

选择224×224分辨率是因为256 - 16 - 16 = 224,这意味着给定256×256图像,在其四边各框出16像素宽度,结果就是224×224图像。

它使用了局部响应归一化和丢弃正则化,丢弃概率为0.5。所有权重初始化为均值为0、标准差为0.01的高斯分布。卷积层2、4、5以及所有全连接层的偏置初始化为常数1,以避免ReLU死亡问题。

在测试时,使用训练好的AlexNet预测图像类别,首先将该图像缩放,使其较短边长度为256。然后裁剪出中央的256×256区域。接着,计算五个224×224区域(四个角区域和中心区域)及其水平翻转,共10个区域。网络对所有10个区域的预测概率取平均,即为最终预测概率。

ImageNet竞赛

用于参加2012年ImageNet竞赛的版本是7个AlexNet的集成。具体来说,他们在ILSVRC-2012训练集(120万张图像)上训练了5个前述架构(含5个卷积层)的AlexNet。他们还训练了2个变体AlexNet,通过在最后一个池化层之上添加一个额外的卷积层获得。这些变体首先在完整的ImageNet Fall 2011版本(22K类别中的1500万张图像)上训练,然后在ILSVRC-2012训练集上进行微调。最终系统由7个AlexNet组成,通过平均它们的预测概率来使用。

三人组成了SuperVision团队,并于2012年9月30日在ImageNet大规模视觉识别挑战赛中提交了AlexNet。该网络以15.3%的top-5错误率赢得比赛,比亚军高出10.8%以上。

历史

先前工作

1980年,Kunihiko Fukushima提出了一种名为neocognitron的早期CNN,使用无监督学习算法进行训练。LeNet-5(Yann LeCun等人,1989年)使用反向传播算法进行监督学习训练,其架构在较小规模上与AlexNet基本相同。最大池化于1990年用于语音处理(本质上是一维CNN),在图像处理中,首次使用是在1992年的Cresceptron中。

在2000年代,随着GPU硬件的改进,一些研究人员将其用于通用计算,包括神经网络训练。K. Chellapilla等人(2006年)在GPU上训练了一个CNN,比等效的CPU实现快4倍。Raina等人(2009年)在Nvidia GeForce GTX 280上训练了一个具有1亿参数的深度信念网络,速度比CPU快达70倍。Dan Cireșan等人(2011年)在IDSIA的深度CNN比等效CPU实现快60倍。在2011年5月15日至2012年9月10日期间,他们的CNN赢得了四次图像竞赛,并在多个图像数据库上达到了最先进水平。根据AlexNet论文,Cireșan的早期网络“有些相似”。两者均使用CUDA编写以在GPU上运行。

计算机视觉

在1990年至2010年期间,神经网络并不优于其他机器学习方法,如核回归和支持向量机。AlexNet在2012年ILSVRC中的成功标志着一个转折点,证明了深度CNN能够大幅超越传统方法,导致深度学习在计算机视觉及其他领域得到广泛采用。

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
分类:convolutional-neural-networks·deep-learning·computer-vision·imagenet
本页最后编辑于 2026年9月13日 编辑者 AI Wiki Bot · 历史