登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 外文翻译 > 计算机类 > 软件工程 > 正文

基于深卷积神经网络的图像网络分类外文翻译资料

 2021-12-29 23:02:56  

英语原文共 9 页,剩余内容已隐藏,支付完成后下载完整资料


基于深卷积神经网络的图像网络分类

克里泽·夫斯基 伊利亚·苏特斯威夫 杰弗里·E.欣顿

多伦多大学 多伦多大学 多伦多大学

kriz@cs.utoronto.ca ilya@cs.utoronto.ca hinton@cs.utoronto.ca

摘 要

我们训练了一个大型的深卷积神经网络,将IMAGENET LSVRC-2010竞赛中的120万幅高分辨率图像分为1000个不同的种类。在测试数据上,我们实现了top-1(37.5%)和top-5(17.5%)的错误率,这比之前的最先进水平要好得多。该神经网络含有神经网络有6000万个参数和65万个神经元,由五个卷积层组成,其中一些卷积层后面是最大池化层,和带有三个最终有1000-way的softmax的全连接层。为了使训练更快,我们使用了非饱和神经元和一个非常有效的GPU实现卷积运算。为了减少全连接层中的过拟合,我们采用了一种新的正规化方法,称为“丢弃”,被证明是非常有效的。在ILSVRC-2012竞赛中,我们还加入了该模型的一个变种,相比较于第二名的测试错误率为26.2%,获得了15.3%的前5名测试错误率。

  1. 引言

目前的目标识别方法主要是利用机器学习方法。为了提高它们的性能,我们可以收集更大的数据集,学习更强大的模型,并使用更好的技术来防止过拟合。直到最近,标记图像的数据集相对变小,大约有上万张图像(例如,norb[16]、caltech-101/256[8,9]和CIFAR-10/100[12])。使用这种大小的数据集可以很好地解决简单的识别任务,特别是当它们通过保留标签的转换进行扩充时。例如,当前MINIST数字识别任务的最佳错误率(lt;0.3%)接近人类表现[4]。但现实环境中的物体表现出相当大的可变性,因此为了学会识别它们,有必要使用更大的训练集。事实上,小图像数据集的缺点已被广泛认识(例如,Pinto等人[21]),但最近才有可能收集带有数百万图像的标记数据集。新的更大的数据集包括Labelme[23],它由数十万个完全分割的图像组成,以及ImageNet[6],它由超过1 500万个标记的高分辨率图像组成,这些图像的类别超过2.2万。

为了从数以百万计的图像中了解上千个对象。我们需要一个拥有强大学习能力的模型。然而,对象识别任务的巨大复杂性意味着,即使是像imagenet这样大的数据集也无法解决这个问题,因此我们的模型需要能够通过先知的知识来补偿未知的知识。卷积神经网络(CNN)构成了这样一类模型[16、11、13、18、15、22、26]。它们的容量可以通过改变深度和广度来控制,它们还可以对图像的性质(即统计的平稳性和像素相关性的局部性)作出正确的假设。因此,与具有相似大小层的标准前馈神经网络相比,CNN的连接和参数更少,因此更容易训练,而理论上最好的性能可能只是稍差一点。

尽管CNN具有吸引人的特性,而且其架构相对效率较高,但它们在大规模应用于高分辨率图像上的成本仍然非常昂贵。幸运的是,当前的GPU与高度优化的二维卷积实现相结合,其功能足以促进对有趣的大型CNN的训练,而最近的数据集(如ImageNet)包含足够多的标记示例,可以在不严重过度拟合的情况下训练此类模型。

本文的具体贡献如下:我们在ILSVRC-2010和ILSVRC-2012竞赛中使用的图像网子集上训练了迄今为止最大的卷积神经网络之一并且实现了目前为止在该数据集上发布过的最好的结果。我们编写了一个高度优化的2d卷积GPU实现,以及训练卷积神经网络所应有的所有其他操作,并将其公开。我们的网络包含许多新的和非寻常的功能,可以改善性能并缩短培训时间,详见第3节。我们使用的神经网络的大小会产生过拟合的问题,即使有120万个标记的训练样例也是如此,因此我们使用了集中有效的方式来抑制过拟合,这将在第四节中描述。我们的最终网络包含五个卷积层和三个完全连接层,这个深度似乎很重要:我们发现删除任何卷积层(每个卷积层不超过模型参数的1%)都会导致性能变差。最后,网络的大小主要受到当前GPU的可用内存大小和我们愿意忍受的训练时间限制。我们的神经网络在GTX 580 3GB的GPU上花费了5到6天的时间用于训练。所有我们的实验显示我们的结果只需等待更快的GPU和更大的数据集可用就可以得到提升。

2、数据集

ImageNet是一个超过1500万个标记属于大约22000个类别的高分辨率图像的数据集。这些图像是从网上收集的,并由人类标记使用亚马逊的Mechanical Turk众包工具进行标记。从2010年开始,举办了名为ImageNet大规模视觉识别挑战赛(ILSVRC)的年度比赛,作为Pascal视觉对象挑战赛的一部分。总之,大约有120万个训练图像,50,000个验证图像和150,000个测试图像。

ILSVRC-2010是唯一可以获得测试集标签的ILSVRC版本,因此这是我们执行大部分实验的版本。由于我们也在ILSVRC-2012竞赛中也加入了我们的模型,因此我们在第6节中报告了此版本数据集的结果,其中测试集标签不可用。在ImageNet中,习惯上报告两个错误率:top-1和top-5,其中top-5错误率是测试图像的分数,正确的标签不在该模型认为最可能的五个标签之中。

ImageNet由可变分辨率图像组成,但我们的系统需要一致的输入维度。因此,我们的采样把分辨率固定为256*256。对于给定的矩形图像,我们首先对图像进行缩放,将较小的边缩放到长度为256,然后所得图像裁剪为256*256的小块。除了将图像的每个像素减去训练集上的平均活动,我们没有对图像做其他的预处理。因此,我们对网络进行了像素原始RGB值(居中)的训练。

3、架构

我们的网络架构如图2所示。它包含八个学习层:五个卷积层和三个完全连接层。下面,我们将介绍我们网络架构的一些新颖或不寻常的功能。 第3.1-3.4节根据我们对其重要性的评估进行排序,其中最重要的是第一部分。

3.1 ReLU非线性

图1:使用ReLU(实线)的四层卷积神经网络在CIFAR-10上达到25%的训练错误率,比使用tanh神经元的等效网络(虚线)快6倍。 每个网络的学习率都是独立选择的,以便尽快进行训练。 没有采用任何形式的正规化。 此处演示的效果的大小因网络架构而异,但使用ReLU的网络始终比饱和神经元的等效实验快几倍。

建模一个神经元的输出函数f关于输入x的函数是f(x)= tanh(x) or f(x) =(1 e(minus;x))(minus;1)。就具有梯度下降的训练时间而言,这些饱和非线性函数比非饱和非线性函数f(x)= max(0,x)慢得多。Nair和Hinton将具有这种非线性的神经元称为整流线性单位(ReLUs)。使用ReLU的深度卷积神经网络比使用tanh的快几倍。图1揭示了这一点,图1显示了特定四层卷积网络在CIFAR-10数据集上达到25%训练误差所需的迭代次数。该图表明,如果我们使用传统的饱和神经元模型,我们就无法用这种大型神经网络进行实验。

我们不是第一个考虑在CNN中替代传统神经元。例如,Jarrett声称非线性函数f(x)=|tanh(x)|在Caltech-101数据集的局部平均池的对比度归一化类型上特别有效。但是,在此数据集上,主要问题是防止过度拟合,因此他们观察到的效果与我们在使用ReLU时报告的训练集的加速能力不同。 更快的学习对在大型数据集上训练的大型模型时的性能有很大影响。

3.2 在多个GPU上训练

单个GTX 580 GPU只有3GB内存,这限制了可以在其上训练的网络的最大尺寸。事实证明,那些因太大而不适合在一个GPU上训练的网络足够训练120万个训练样例。因此,我们将网络分布在两个GPU上训练。当前的GPU因能够直接不通过主机内存而读和写入到另一个内存而特别适合跨GPU并行运算。我们采用的并行化方案基本上将一半内核(或神经元)放在每个GPU上,还有一个额外的技巧:GPU仅在某些层中进行通信。这意味着,例如,第3层的内核从第2层中的所有内核映射获取输入。但是,第4层中的内核仅从位于同一GPU上的第3层中的那些内核映射获取输入。选择连接模式是交叉验证的一个问题,但这允许我们精确地调整通信量,直到它是计算量的可接受部分。

最终的架构与Ciresan等人使用的“专栏”CNN有些相似。除了我们的列不是独立的(参见图2)。该方案将我们的前1和前5错误率分别降低了1.7%和1.2%,相比之下,在每个卷积层中,在一个GPU上训练的内核数量只有一半。两个GPU网络的训练时间比一个GPU网络2略短。

3.3 局部响应规范化

Relus具有不错的特性,即它们不需要标准化输入来防止饱和。如果一些训练的例子至少产生一个正的输入到一个ReLU,学习将发生在该神经元。然而,我们仍然发现以下的局部标准化方案有助于一般化。使用ai(x,y)表示通过在位置(x,y)处应用核i计算的神经元的激活度,然后应用ReLU非线性。响应归一化活性 ,通过如下表达式获得:

其中总和在相同空间位置的n个“相邻”内核映射上运行,N是每层中内核的总数。内核映射的顺序是任意的,并在训练开始前确定。这种反应标准化实现了一种横向抑制形式,这种抑制形式受到了在真实神经元中发现的类型的启发,在使用不同核计算的神经元输出之间产生了对大活动的竞争。常数k、n、alpha;和beta;是超参数,其值由验证集确定;我们使用k=2、n=5、alpha;=10minus;4和beta;=0.75。我们在某些层中应用了ReLU非线性后应用了这种归一化(见第3.5节)。

该方案与Jarrett等人的局部对比标准化方案有些相似。[11],但是我们的“亮度归一化”会更准确地称为“亮度归一化”,因为我们不减去平均活动。响应标准化将我们的top-1和top-5错误率分别降低1.4%和1.2%。我们还验证了该方案在CIFAR-10数据集上的有效性:一个四层CNN在没有标准化的情况下达到了13%的测试错误率,在标准化的情况下降低到11%。

3.4 重叠池

在CNN中池化层总结了同一内核映射中相邻神经元组的输出。传统上,通过邻接池化单元总结的邻近关系不重叠(例如,[17,11,4])。更准确地说,一个池化层由相距s像素的池化单元网格组成,位于池化单元中心的每个网格总结出一个ztimes;z大小的临近关系。若设s=z,我们得到传统的局部池化,就像常用于CNN中的那样。若使slt;z,那么我们将得有重叠的池化。s=2和s=3在我们的整个网络中使用。这个方案和没有无重叠的设置(s=2,z=2)相比分别将top-1和top-5的错误率降低了0.4%和0.3%。我们通常在训练过程中发现使用重叠池的模型略在发现过度拟合上要更难一些。

3.5 总体结构

现在我们准备好描述该CNN的总体结构。如图2所示,该网络包含8个带权层;前5个是卷积层,剩下三层是全连接层。最后一个全连接层输出到一个1000-way的softmax层,产生一个覆盖1000类标签的分布。我们的网络最大化了多项式逻辑回归目标,这相当于最大化了在预测分布下训练样本中正确标签的对数概率平均值。

图2:CNN架构示意图,明确的显示了两个GPU的职责。一个GPU运行图中的顶部,另一个运行底部部分。GPU之间的通信只在某些层发生。该网络的输入是150,528维的,且该网络剩下各层的神经元数分别为253,440–186,624–64,896–64,896–43,264–4096–4096–1000。

第二、第四和第五个卷积层的核只连接到前一个卷积层也位于同一GPU中的那些核映射上(见图2)。第三卷积层的内核被连接到第二卷积层的所有内核映射上。全连接层的神经元被连接到前一层的所有神经元上。响应归一化层在第一和第二卷积层后面。最大3.4节中所述的池化层跟在响应归一化层和第5卷积层。ReLU非线性应用于每个卷积层及全连接层的输出。

第一个卷积层利用96个大小为11times;11times;3、步长为4个像素(这是同一核映射中邻近神经元的感受野中心之间的距离)的核,来对大小为224times;224times;3的输入图像进行滤波。第二个卷积层需要将第一个卷积层的(响应归一化和池化)输出作为自己的输入,且利用256个大小为5times;5times;48的核对其进行滤波。第三个卷积层有384个大小为3times;3times;256的核被连接到第二个卷积层的(归一化的、池化的)输出。第四个卷积层拥有384个大小为3times;3times;192的核,第五个卷积层拥有256个大小为3times;3times;192的核。全连接层都各有4096个神经元。

4、减少过拟合

我们的神经网络架构有6000万个参数。虽然虽然ILSVRC的1000个类别使得每个训练样本强加10比特约束到从图像到标签的映射上,但是要学习如此多的参数而不考虑过拟合问题是不行的。下面,我们介绍两种减少过拟合的方法。

4.1 数据扩充

减少图像数据过度拟合的最简单和最常用的方法是使用标签-保留转换方法来人为地扩大数据集(如,[25,4,5])。我们使用数据增强的两种不同形式,这两种形式都使用很少的计算量从原始图像中产生,所以转换图像不需要存储在磁盘上。在我们的实现中,转换图像的生成使用python代码在cpu上执行,而GPU在训练之前那一批图像。一次这些数据扩充实际上没有计算

全文共14452字,剩余内容已隐藏,支付完成后下载完整资料


资料编号:[2957]

您需要先支付 20元 才能查看全部内容!立即支付

微信号:bysjorg

Copyright © 2010-2022 毕业论文网 站点地图