英语原文共 9 页,剩余内容已隐藏,支付完成后下载完整资料
深度图像:缩放图像识别
Ren Wu,Shengen Yan,Qingqing Dang,Gang Sun
摘 要
我们提供了使用端到端深度学习开发的最先进的图像识别系统Deep Image。关键组件包括专门用于深度学习的定制超级计算机,使用数据分区和通信新策略的高度优化的并行算法,更大的深度神经网络模型,新颖的数据增强方法以及多尺度高分辨率图像的使用。在最具挑战性的计算机视觉基准之一(ImageNet分类挑战)上,我们的系统取得了迄今为止最好的结果,前5个错误率达4.58%,超过了人类识别性能,比ILSVRC相对提高了31% 2014年冠军。
关键词:图像识别;计算机;神经网络
1介绍
1997年5月11日,IBM的Deep Blue在六场比赛中击败世界象棋冠军加里·卡斯帕罗夫(Gary Kasparov),取得了历史性胜利(坎贝尔等。, 2002).令某些人感到惊讶,但是使用正确的算法,国际象棋的性能是计算能力的函数(康登& 汤普森, 1982), (凯悦等。, 1990), (库斯马尔, 1995).如今,历史在重演:简单,可扩展的算法,在有足够的数据和计算资源的情况下,主导了许多领域,包括视觉对象识别(Ciresan等。, 2010), (克里热夫斯基等。, 2012), (塞格迪 等。, 2014), 语音识别 (达尔等。, 2012), (汉 修女等。, 2014)和自然语言处理(Col- 洛伯特和韦斯顿, 2008), (Mnih amp; Hinton, 2007), (姆尼 amp; Hinton, 2008).
尽管对神经网络进行了数十年的研究,但直到最近才使它们成为现实,归功于更大的训练数据集的可用性以及通过异构计算提高的计算能力(Coates等。, 2013).
由于计算能力对于深度学习的发展至关重要,因此我们构建了专为深度学习而设计的超级计算机以及可充分利用此类硬件的软件堆栈。通过使用特定于应用程序的硬件软件协同设计,我们得到了一个高度优化的系统。该系统使大型模型可以在更多数据上进行训练,同时还减少了周转时间,使我们能够更快地探索思想。
但是,当前的深度学习实践仍然存在两个缺点。首先,虽然我们知道较大的模型可以提供更多的潜在容量,但实际上,模型的大小是十个限制因素是训练数据太少或进行实验的时间太短,这可能会导致拟合过度或拟合不足。其次,收集的数据通常限于潜在示例空间的特定区域。这对于非常庞大的神经网络尤其具有挑战性,因为它可能过度拟合。
在这项工作中,我们展示了积极的数据扩充位置可以防止过度安装。我们以新颖的方式使用数据增强,比以前的工作更加积极(霍华德,2013年), (Krizhevsky et al., 2012).增强的数据集大数万倍,从而使网络对各种转换变得更加健壮。
此外,我们训练多尺度图像,包括高分辨率图像。最新作品(克里热夫斯基 等人,2012年), (Zeiler&Fergus,2014年) 向下运行尺寸的图像,分辨率约为256x256。虽然使用缩小的图像可以降低计算成本而又不会损失太多的准确性,但我们发现放大图像可以提高识别精度。正如我们所展示的,在许多情况下,对象的大小很小,并且缩小尺寸只会丢失太多信息。
对高分辨率图像的训练可以改善分类阳离子精度。更重要的是,在高分辨率图像上训练的模型补充了在低分辨率图像上训练的模型。组成经过不同训练的模型缩放比单独的任何模型产生的结果更好。
在本文中,我们详细介绍了用于深度学习的定制设计超级计算机,以及利用该硬件而构建的优化算法和软件堆栈。该系统使我们能够训练更大的神经模型,处理更高分辨率的图像,并使用更具攻击性的数据增强方法。在广泛研究的1k ImageNet分类挑战中,我们获得了最先进的结果,前五位的错误率为4.58%。
2硬件/软件协同设计
图1.四个GPU之间的通信策略示例
显然,不同种类的算法在不同的计算体系结构上将执行不同的操作。图形处理器或GPU通常在计算密集型算法中表现出色。早期的工作表明,对于集群算法,单个GPU的性能提高了10倍与顶级8核工作站相比,性能更高,即使在具有超过十亿个数据点的超大型数据集上也是如此(吴 等,2009).最近的示例显示,三台具有4个GPU的GPU服务器可与Google Brain项目使用的1000个节点(16000核)CPU群集的性能相媲美。(Coates等,2013).
现代深度神经网络主要由vari训练随机梯度体面算法(SGD)的蚂蚁。由于SGD包含很高的算术密度,因此GPU非常适合此类算法。
此外,我们希望训练非常大的深度神经网络,而不必担心单个GPU甚至单个机器的容量限制,因此扩大规模是必要条件。给定stochas的属性tic梯度体面算法,希望具有非常高的带宽和超低延迟的互连分散通信费用,这是Dis所需的算法的贡献版本。
结果就是定制的超级计算机,我们称之为Minwa。它由36个服务器节点组成,每个服务器节点配备2个六核Intel Xeon E5-2620处理器。每个服务器的骗局拥有4个Nvidia Tesla K40m GPU和一个FDR InfiniBand(56Gb / s),这是一种高性能的低延迟接口连接并支持RDMA。每个GPU的峰值单精度浮点性能为4.29TFlops,每个GPU具有12GB内存。借助GPUDirect RDMA,InfiniBand网络接口可以访问无需CPU参与的GPU内存。所有服务器节点都连接到InfiniBand交换机。图1显示了系统架构。该系统运行带有CUDA 6.0和MPI MVAPICH2的Linux,这也支持GPUDirect RDMA。
Minwa总共有6.9TB主机内存,1.7TB设备内存和约0.6PFlops的理论单精度峰值性能。
3优化
我们的目标是在给定任务上从硬件和软件两方面追求最高性能。在现代深度卷积神经网络中,卷积层占大多数计算,而全连接层占大多数参数。我们为并行的深度神经网络框架实现了两种并行策略,即模型数据并行和数据并行。在先前的工作中已经提出了类似的策略(克里热夫斯基, 2014), (Yadan等。, 2013).但是,以前的工作主要集中在具有多个GPU或小型GPU群集的单个服务器上,因此由于通信瓶颈,很难直接扩展到大型GPU群集。在我们的工作中,我们专注于优化并行策略,最小化数据传输以及重叠计算和通信。为了接近Minwa等大型超级计算机的峰值性能,这是必需的。
3.1数据并行
当所有参数都可以存储在一个GPU的内存中时,我们将在所有层利用数据并行性。在这种情况下,每个GPU负责输入图像的1 / N个微型批处理,并且所有GPU都在同一微型批处理中一起工作。在一次向前-向后传递中,所有层的参数和渐变都复制到每个GPU上。所有GPU均基于本地训练数据和本地权重副本计算梯度。然后,他们交换渐变并更新权重的本地副本。种策略帮助我们实现了更好的并行性。第一个是“蝴蝶同步”策略,其中所有梯度都分k. 在计算时,GPU k从所有其他GPU接收第k个部分,在那里进行累加,然后将结果广播回所有GPU。另一个是“延迟更新”策略。一旦在向后传递中生成了渐变,每个GPU就会将其生成的渐变发送给异步的相应GPU同步方式。此传输无需同步直到需要使用其相应的权重参数,该参数才在正向传递中出现。这样可以最大程度地提高计算量和计算量沟通。
图2.不同并行方法的可伸缩线
3.2数据模型并行
虽然数据并行性在较小的模型上运行良好。如果模型大小无法放入单个GPU的内存中,它将无法正常工作。模型数据并行性用于解决此问题。在这里,数据并行性仍在卷积层上使用,但是完全连接的层在稳定地分区并分布到多个GPU。这是可行的,因为卷积层具有较少的参数但具有更多的计算量。
卷积层的参数复制到ev上一块微型批处理中的所有GPU和所有图像都是同等的正如我们在本节中所述,将其分类并分配给所有GPU 3.1.但是,全连接层的参数在所有GPU之间平均分配。然后,所有GPU一起工作以计算完全连接的层并在必要时进行同步。这类似于ap提出的方法(克里日夫斯基,2014年),即使我们正在按比例扩大规模。
图3.浏览图像的速度加快
3.3 缩放效率
我们通过训练图像分类任务的模型来测试缩放效率。该网络具有8个卷积层和3个全连接层,其后是1000个方式softmax。用时代时间来衡量效率和图像浏览速度如图 2 和图 3. 为了方便观察不同并行策略的可伸缩性,我们将每个GPU处理的图像数固定为64(切片= 64)。图中显示了使用不同数量的GPU进行混合并行和数据并行所花费的时间 2. 当涉及的GPU数量大于16时,数据并行性能会更好。当模型大小固定时,导致数据并行策略的通信开销恒定。批量越大,提速越大,如图所示 3. 通讯与单个GPU相比,使用64个最小批处理大小为1024的GPU可以使图像浏览速度提高47倍。随着GPU数量的增加,设备的总内存也在增加,并且可以在设备上缓存更多数据记忆。这对即兴创作很有帮助并行效率。
并行算法的最终测试是收敛时间,即网络达到一定精度水平所需的挂钟时间。数字 4 比较使用各种数量的GPU网络达到80%精度所需的时间。请注意,使用32个GPU可获得24.7倍的加速。
图4.不同数量GPU的验证集准确性
图5.数据扩充的效果
4.培训数据
4.1.数据扩充
“看到的越多,知道的越多”这句话对人类和神经网络都是适用的,特别是对于mod深度神经网络。
我们现在能够构建非常大的深度神经网络借助ded,可处理多达数千亿个参数超级计算机,例如Minwa。可用火车仅数据不足以训练这种规模的网络。此外,所收集的示例通常只是“良好”数据的形式-或相当小且大量可能空间的子集。希望向网络显示更多具有广泛覆盖范围的数据。
本文的作者认为,数据增强对于提高网络性能至关重要。我们希望网络学习对象类别不变的重要特征,而不是训练图像的伪像。我们有前探究了许多不同的增强方法,本节将讨论其中的一些方法。
很明显,如果一个对象不改变其类环境照明发生变化,或者如果观察者被一个其他。更具体地说,这就是说神经网络工作模型应该对由场景的光源或来自各个观察者的光学系统驱动的颜色不敏感。这种观察使我们专注于一些关键的增强功能,例如偏色,刺眼和镜头变形,如图所示 5.
与移色不同(Krizhevsky等, 2012),我们执行颜色转换以更改训练图像中RGB通道的强度。具体来说,对于每个图像,我们生成三个布尔值来确定是否应分别更改R,G和B通道。如果要更改一个通道,我们添加一个随机整数范围从-20到 20到该频道。
渐晕意味着使图像的外围比图像中心暗。在我们的实现中,有两个随机可变的变量可用于装饰图案效果。首先是要
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[607225],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、文献综述、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。