越来越深入的卷积
摘要
我们提出了一个代号为“Inception”的深度卷积神经网络架构,实现了2014 年Im-ageNet 大规模视觉识别挑战(ILSVRC14) 中分类和检测的最新技术。这种架构的主要特点是提高了网络内部计算资源的利用率。通过精心设计,我们增加了网络的深度和宽度,同时保持了计算预算不变。为了优化质量,架构决策是基于Hebbian 原理和多尺度处理的直觉。我们提交给ILSVRC14 使用的一个特定的内容被称为GoogLeNet,这是一个22 层深的网络,其质量已在分类和检测方面进行了评估。
介绍
在过去的三年中,由于深度学习和卷积网络的发展,我们的对象分类和检测能力得到了显着提高[10]。一个令人鼓舞的消息是,这些进展大部分不仅仅是更强大的硬件,更大的数据集和更大的模型的结果,而是主要由于新想法,算法和改进的网络架构的结果。例如,除了用于检测目的的同一竞争的分类数据集之外,没有使用新的数据源,例如ILSVRC 2014比赛中的最佳条目。 我们对ILSVRC2014的GoogLeNet提交的参数实际上比两年前Krizhevsky等[9]的获胜体系结构使用的参数少了12倍,而且准确度更高。在对象检测方面,最大的收益并不是来自大规模应用的天真应用,Ger和更深的网络,而是来自深层架构和经典计算机视觉的协同作用,如Girshick等[6]的R-CNN算法。
另一个值得注意的因素是,随着移动和嵌入式技术的不断推动,我们算法的效率—尤其是其功耗和内存使用—变得越来越重要。值得注意的是,本文提出的深层架构设计的考虑因素包含了这个因素,而不是对准确度数字有完全的固定。 对于大多数实验来说,这些模型的设计目的是在推理时保持15亿次乘加的计算预算,以便它们不会成为纯粹的学术好奇心,但可以投入到现实世界的使用中,甚至在大数据集上,以合理的成本。
在本文中,我们将重点介绍一种高效的计算机视觉深层神经网络体系结构,代号为Incept,其名称来源于Lin等[12]在网络论文中的网络名称,以及着名的
“我们需要更深入“互联网模块[1]。 在我们的例子中,“深”这个词有两个不同的含义:首先,就我们引入组织的新层次而言,它是以“先入先出”的形式出现的,也是更直接的意义上的增加的网络深度。 总的来说,我们可以从Arora等[2]的理论工作中获得启发和指导,将Inception模型视为[12]的逻辑顶点。该架构的优势通过ILSVRC 2014分类和检测挑战进行了实验验证,其显着优于当前的技术水平。
相关工作
从LeNet-5开始[10],卷积神经网络(CNN)通常具有标准结构 - 堆叠卷积层(可选地,trast标准化和max-pooling)之后是一个或多个完全连 接的层。 这种基本设计的变体在图像分类文献中很普遍,并且在MNIST,CIFAR和最显着的ImageNet分类挑 战方面取得了最好的结果[9,21]。 对于较大的数据集, 如Imagenet , 最近的趋势是增加层数[12] 和层大小[21,14],同时使用丢失[7]来解决过度拟合问题。
1
尽管担心最大汇聚层会导致精确的空间信息丢失, 但与[9]相同的卷积网络架构也已经成功地用于定位[9,14],对象检测[6,14,18,5]和人类姿态估计[19]。受灵长类动物视觉皮层的神经科学模型的启发,Serre等人 [15]使用了一系列不同大小的固定Gabor 滤波器来处理多个尺度。 我们在这里使用类似的策略。然而,与[15]的固定2层深模型相反,Inception架构 中的所有滤波器都是学习的。 此外,初始层重复多次, 在GoogLeNet模型的情况下导致一个22层深的模型。
网络网络是Lin等人提出的一种方法。 [12]为了增加神经网络的表现力。 在他们的模型中,额外的1times;1卷积层被添加到网络中,增加了它的深度。我们在架构中大量使用这种方法。然而,在我们的设置中,1times;1卷积具有双重目的:最关键的是,它们主要用作降维模块以消除计算瓶颈,否则会限制我们网络的规模。这不仅允许增加深度,而且还允许我们网络的宽度没有显着的性能损失。
最后,目前的物体检测技术状态是Girshick等人的卷积神经网络(R-CNN)方法[6]。R-CNN将整体检测问题分解为两个子问题:利用低级提示(如颜色和纹理),以类别无关的方式生成对象位置提议,并使用CNN分类器识别这些位置的对象类别。 这种两阶段方法利用低层线索的边界框分割的准确性,以及最先进的CNN的高度强大的分类能力。我们在检测提交中采用了类似的流水线,但在两个阶段探索了增强功能,例如多框[5]预测更高的目标边界框回忆,以及更好地对边界框提案进行分类的集成方法。
动机和高层次考虑
提高深度神经网络性能的最直接的方法是增加它们的大小。这包括增加深度 — 网络的数量,工作水平—以及宽度:每个级别的单位数量。 这是训练更高质量模型的一种简单而安全的方法,尤其是考虑到大量标记的训练数据的可用性。 但是,这个简单的解决方案有两个主要缺点。
图 1:ILSVRC 2014 分类挑战的 1000 个类中的两个不同类。需要领域知识来区分这些类。
工作水平 - 以及宽度:每个级别的单位数量。 这是训练更高质量模型的一种简单而安全的方法,尤其是考虑到大量标记的训练数据的可用性。 但是,这个简单的解决方案有两个主要缺点。
更大的尺寸通常意味着更多的参数,这使得放大的网络更容易出现过度拟合,特别是如果训练集中标记示例的数量有限。 这是一个主要瓶颈,因为强烈标记的数据集非常费时费力,通常需要专业人员评估者来区分各种细粒度视觉类别,例如ImageNet中的视觉类别(即使在1000级ILSVRC子集中),如图1所示。
统一增加网络大小的另一个缺点是计算资源的使用 大大增加。 例如,在深度视觉网络中,如果两个卷积层链接在一起,其滤波器数量的任何均匀增加导致计 算的二次增加。如果增加的容量被低效地使用(例如, 如果大多数权重最终接近零),那么大部分计算就会被浪费。由于计算预算总是有限的,因此即使主要目标是提高性能质量,计算资源的有效分配也优于不加区 别地增加大小。
解决这两个问题的一个基本方法是引入稀疏性,并用稀疏元素替换完全连接的层,即使在卷积中也是如此。 除了模仿生物系统外,由于Arora等人的开创性工作,这也将具有更坚实的理论基础[2]。他们的主要结果表明,如果数据集的概率分布可以用一个大而稀疏的深度神经网络来表示,那么可以通过分析前面的层激活和聚类神经元的相关统计来一层一层地构建最佳网络拓扑具有高度相关的输出。 虽然严格的数学证明需要非常强的条件,但这个陈述的事实与众所周知的Hebbian原理——一起燃烧,连接在一起的神经元产生共鸣一一表明,即使在较不严格的条件下, 实践中也可应用基本思想。
不幸的是,当涉及到非均匀稀疏数据结构的数值计算时,今天的计算基础设施效率很低。即使算术操作的数量减少了100,查找和缓存未命中的开销也将占主 导:切换到稀疏矩阵可能无济于事。通过使用稳步改进和高度调整的数字库,这种差距进一步扩大,这种数字库允许极快的密集矩阵乘法,利用底层CPU或GPU 硬件的微小细节[16,9]。而且,非均匀稀疏模型需要更复杂的工程和计算基础设施。大多数当前面向视觉的机器学习系统仅利用卷积来利用空间域中的稀疏性。但是,卷积是作为较早层中的补丁的密集连接的集合来实现的。为了打破对称性并改善学习,ConvNets传统上在特征维中使用了随机和稀疏连接表[11],但为 了进一步优化并行计算,趋势变回了与[9]的完全连接。当前最先进的计算机视觉体系结构具有统一的结构。大量的过滤器和更大的批量可以有效地使用密集计算。
这就产生了下一个中间步骤是否有希望的问题:如理论所建议的那样,利用滤波器级稀疏性的体系结构, 但利用我们当前的硬件,利用密集矩阵上的计算。 关于稀疏矩阵计算的大量文献(例如[3])表明,将稀疏矩阵聚类到相对密集的子矩阵中往往会为稀疏矩阵乘法提供有竞争力的性能。认为在不久的将来自动化构建非统一的重构架构将采用类似的方法似乎并不遥远。
Inception架构开始作为一个案例研究,用于评估复杂的网络拓扑构建算法的假设输出,该算法试图逼近视觉网络[2]暗示的稀疏结构,并通过密集的,容易获得的组件覆盖假设的结果。尽管这是一项高度投机性的事业,但与基于[12]的参考网络相比,在早期观察到微小的收益。经过一些调整,差距扩大了,并且初 始证明在本地化和目标检测作为[6]和[5]的基础网络的情况下特别有用。 有趣的是,尽管大多数原始建筑选择都是在分离的情况下进行了彻底的质疑和测试,但它们证明在本地接近最佳。但必须谨慎:虽然初始架构已经成为计算机视觉的成功,但这是否可以归因于导致其构建的指导原则仍然值得怀疑。 确保这一点需要更彻底的分析和验证。
建筑细节
初始体系结构的主要思想是考虑卷积视觉网络的最优局部稀疏结构如何可以通过容易获得的密集分量来近似和覆盖。 请注意,假设转换不变意味着我们的网络将从卷积构建块构建。 我们需要的是找到最佳的局部构造并在空间上重复它。 Arora等人[2]提出了一种逐层结构,其中应该分析最后一层的相关统计并将它们聚类为具有高相关性的单元组。 这些簇形成下一层的单元并连接到前一层的单元。 我们假设来自较早层的每个单元对应于输入图像的一些区域,并且这些单元被分组成滤波器组。 在较低层(接近输入的那些层)相关单元将集中在本地区域。 因此,我们最终会将很多聚类集中在一个区域中,并且它们可以在下一层中被一层1times;1卷积覆盖,如[12]中所述。 然而,人们也可以预期,在更大的斑块上卷积可以覆盖的空间分布更多的簇的数量将会减少,并且越来越大的区域将会有越来越多的斑块。 为了避免补丁对齐问题,Inception体系结构的当前版本仅限于过滤器大小为1 times;1、3 times;3和5times;5; 这个决定更多的是基于便利性而非必要性。 这也意味着所建议的架构是所有这些层的组合,其输出 滤波器组连接成单个输出矢量,形成下一阶段的输入。此外,由于池化操作对于当前卷积网络的times;成功至关重要,因此它建议在每个这样的阶段增加一个替代的并 行池路径也应该具有额外的有益效果(参见图2(a))。
由于这些“初始模块”堆叠在一起,因此它们的输出相关性统计量必然会发生变化:由于较高层的特征会捕获较高的抽象特征,因此它们的空间浓度预计会下降。 这表明随着我们移动到更高层,3times;3和5times;5卷积的比例应该增加。
滤波器级联
3times;3最大池化
5times;5 卷积
1times;1 卷积
3times;3卷积
3times;3卷积
(a)初始模块
3times;3卷积
3times;3卷积
3times;3卷积
3times;3卷积
3times;3卷积
3times;3卷积
3times;3卷积
3times;3卷积
3times;3卷积
(b)降维的初始模块
图 2:启动模块
至少在这种初始形式中,上述模块的一个大问题是, 即使是数量适中的5times;5个卷积,在具有大量过滤器的卷积层的顶部也可能过于昂贵。一旦将混合单元添加到混音中,这个问题变得更加明显:输出过滤器的数量等于前一阶段的过滤器。合并层的输出与卷积层的输出的合并将导致阶段到阶段的输出数量不可避免地增加。虽然这种架构可能会覆盖最佳的稀疏结构,但它会非常低效地执行,导致在几个阶段内发生计算性爆炸。
这导致了初始体系结构的第二个想法:在计算需求增加太多的情况下,明智地减少维度。这是基于嵌入成功的:甚至低维嵌入可能包含大量关于较大图像补丁的信息。 但是,嵌入以密集的压缩形式表示信息, 压缩信息难以处理。 在大多数地方(如[2]的条件所要求的),表示应该保持稀疏,并且只有在必须将它们集中在一起时才压缩信号。 那是,在昂贵的3times;3和5times;5卷积之前,使用1times;1卷积来计算减少量。除了用作减少剂之外,它们还包括使用经过矫正的线性激活,使其具有双重用途。最终结果如图2(b)所示。
一般来说,Inception网络是由上述类型的模块组成的一个网络,彼此堆叠在一起,偶尔使用步长为2的最大池层将网格的分辨率减半。由于技术原因(记忆在训练期间的效率),开始仅在较高层使用Inception 模块,同时以传统卷积方式保持较低层,似乎是有益的。 这不是绝对必要的,只是反映了我们目前实施中的一些基础设施效率低下问题。
这种体系结构的一个有用的方面是,它允许在每个阶段显着增加单元数量,而不会在后期的计算复杂性中产生不受控制的爆炸。 这是通过在较大斑块尺寸的昂贵卷积之前普遍使用降维来实现的。 此外,设计遵循实际的直觉,即视觉信息应该以不同的尺度进行处理,然后进行聚合,以便下一阶段可以同时从不同尺度提取特征。
计算资源的改进使用允许增加每个阶段的宽度以及阶段的数量而不会计算困难。人们可以利用 Inception架构来创建稍微低劣但计算更便宜的版本。我们发现,所有可用的旋钮和控制杆都允许对计算资源进行可控平衡,从而使网络的 速度比采用非Inception架构的类似执行网络快310倍,但这需要仔细的手动设计。
GoogleNet
通过“GoogLeNet”这个名字,我们提到ILSVRC 2014 竞赛中我们提交的Inception架构的具体化身。我们还使用了一个质量略优的更深入更广泛的Inception网 络,但将它添加到合奏中似乎只能稍微改善结果。 我们忽略了该网络的细节,因为经验证据表明,确切的 架构参数的影响相对较小。 表1说明了比赛中使用的最常见的例子。这个网络(使用不同的图像补丁采样方法进行训练)被用于我们的集合中的7个模型中的6个。
所有卷积,包括Inception模块中的卷积,都使用整流线性激活。在我们的网络中,接受区域的大小为224times;224,RGB色彩空间中的平均值为零。 “#3times;3缩小”和“#5times;5缩小”表示在3times;3和
全文共14787字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[16751],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。