《Going Deeper with Convolutions》论文笔记

GoogLeNet/Inception V1

 这篇文章是Inception系列的第一篇,提出了GoogleNet也就是Inception V1,文章发表在了CVPR 2015。原文可见Going Deeper with Convolutions。


摘要

 在ImageNet大型视觉识别挑战2014(ILSVRC14)中,我们提出了一种代号为Inception的深度卷积神经网络架构,实现了分类和检测的SOTA。该体系结构的主要特点是提高了网络内部计算资源的利用率。通过精心设计,我们增加了网络的深度和宽度,同时保持计算预算不变。为了优化质量,架构决策基于Hebbian原则和多尺度处理的直觉。在我们提交到ILSVRC14中使用的一种特殊形式是GoogLeNet,它是一个22层的深层网络,其质量是在分类和检测的背景下评估的。

1. 引言

 在过去的三年中,由于深度学习和卷积网络的发展,我们的目标分类和检测能力有了显著的提高。一个令人鼓舞的消息是,大部分的进展不仅仅是更强大的硬件、更大的数据集和更大的模型的结果,而且主要是新思想、算法和改进的网络架构的结果。例如,在ILSVRC 2014竞赛中,除了使用同一竞赛的分类数据集进行检测外,并没有使用新的数据源。我们提交给ILSVRC 2014的GoogLeNet实际上使用的参数是Krizhevsky等人两年前获奖架构[AlexNet]的12倍,同时明显更准确了。在目标检测方面,最大的收获并不是来自越来越大的深层网络的单纯应用,而是来自深层结构和经典计算机视觉的协同作用,如Girshick等人的R-CNN算法。

 另一个值得注意的因素是,随着移动和嵌入式计算的不断发展,我们算法的效率——尤其是它们的能力和内存使用——变得越来越重要。值得注意的是,本文提出的深层体系架构设计考虑因素包括了这一因素,而不是单纯地关注精度数字。在大多数实验中,这些模型的设计是为了在推理时保持15亿乘加法的计算预算,这样它们就不会成为纯粹的学术好奇心,而是可以以合理的成本投入到现实世界中,即使是在大型数据集上。

 在本文中,我们将专注于代号为Inception的高效的用于计算机视觉的深度神经网络体系结构,该结构的名称源自Lin等人在[Network in network]论文中的网络以及著名的“我们需要更深入”的网络模因。在我们的例子中,“deep”一词有两种不同的含义:首先,我们以“Inception模块”的形式引入了一个新的组织层次,同时也增加了网络深度。一般来说,我们可以把Inception模型看作是[Network in network]的逻辑顶点,同时从Arora等人的理论工作中获得灵感和指导。该架构的优点在ILSVRC 2014分类和检测挑战中得到了实验验证,其性能显著优于当前的SOTA。

2. 相关工作

 从LeNet-5开始,卷积神经网络(CNN)通常有一个标准的结构-堆叠卷积层(可选地随后是对比度归一化和最大池),之后是一个或多个全连接层。这种基本设计的变体在图像分类文献中普遍存在,并在MNIST、CIFAR和ImageNet分类挑战中获得了迄今为止最好的结果。对于较大的数据集,如Imagenet,最近的趋势是增加层数和层大小,同时使用dropout来解决过拟合问题。

 尽管担心最大池化层会导致精确空间信息的丢失,但与[AlexNet]相同的卷积网络架构也成功地用于定位、目标检测和人体姿态估计。

 Serre等人受灵长类视觉皮层神经科学模型的启发,使用一系列不同大小的固定Gabor过滤器来处理多个尺度。我们在这里使用了类似的策略。然而,与[Robust object recognition with cortex-like mechanisms]固定的2层深度模型相反,Inception架构中的所有滤波器都是学习的。此外,Inception层会重复很多次,导致在GoogLeNet模型中出现22层的深度模型。

 Network-in-Network是Lin等人为了提高神经网络的表征能力而提出的一种方法。在他们的模型中,额外增加了 1 × 1 1\times 1 1×1卷积层,增加了网络的深度。我们在体系结构中大量使用这种方法。然而,在我们的设置中,1×1卷积有双重目的:最关键的是,它们主要用作降维模块来消除计算瓶颈,否则其将限制网络的大小。这不仅可以增加网络的深度,还可以在不影响性能的情况下增加网络的宽度。

 最后,当前的目标检测技术的SOTA是Girshick等人提出的基于卷积神经网络的区域检测方法(R-CNN)。R-CNN将整个检测问题分解为两个子问题:利用颜色和纹理等低层线索,以一种与类别无关的方式生成目标位置建议,并使用CNN分类器在这些位置识别目标类别。这种两阶段的方法利用了具有低层线索的边界框分割的准确性,以及最先进的CNNs的强大分类能力。我们在检测任务中采用了类似的过程,但是在这两个阶段都进行了增强,比如针对更高的目标边界框召回率的多框预测,以及集成方法用于更好地对边界框建议进行分类。

3. 动机和高层次的考虑

 提高深度神经网络性能最直接的方法是增加其规模。这包括增加深度(网络层次的数量)和宽度(每个层次的单元数量)。这是一种训练高质量模型的简单和安全的方法,特别是考虑到有大量标记的训练数据可用。然而,这个简单的解决方案有两个主要缺点。

 较大的尺寸通常意味着更多的参数,这使得扩大后的网络更容易发生过拟合,特别是当训练集中标记的样本数量有限时。这是一个主要的瓶颈,因为强标记数据集的获取既费力又昂贵,常常需要专业的人工评分员来区分各种细粒度的可视类别,比如ImageNet中的那些(即使是在1000类ILSVRC子集中),如图1所示。

《Going Deeper with Convolutions》论文笔记_第1张图片
图1. ILSVRC 2014分类挑战的1000个类别中的两个不同的类别。需要领域知识来区分这些类。

 网络规模一致增长的另一个缺点是计算资源的使用显著增加。例如,在深度视觉网络中,如果两个卷积层被链接,它们的滤波器数量的任何均匀增加都会导致计算量的二次增长。如果没有有效地使用增加的容量(例如,如果大多数权重最终接近于零),那么大部分计算就会浪费。由于计算预算总是有限的,即使主要目标是提高性能的质量,有效地分配计算资源也比不加区别地增加规模好。

 解决这两个问题的一个基本方法是引入稀疏性,用稀疏层替换完全连接的层,甚至在卷积内部也是如此。除了模仿生物系统,由于Arora等人的开创性工作,这也将具有更坚实的理论基础的优势。他们的主要结果表明,如果数据集的概率分布可以用一个很大的、非常稀疏的深度神经网络来表示,那么通过分析前一层激活的相关统计量和聚类输出高度相关的神经元,可以逐层构建最优网络拓扑。尽管严格的数学证明需要非常强的条件,但事实上,这一说法与众所周知的Hebbian理论(一起激发的神经元连在一起)产生了共鸣,这表明,即使在不太严格的条件下,在实践中,基本思想也是适用的。

 不幸的是,当涉及到非均匀稀疏数据结构的数值计算时,当今的计算基础设施非常低效。即使算术运算的数量减少了100倍,查找和缓存未命中的开销也将占主导地位:切换到稀疏矩阵可能不会有回报。通过使用稳定改进和经过高度调整的数值库,利用底层CPU或GPU硬件的微小细节,可以实现极快的密集矩阵乘法,从而进一步扩大了差距。此外,非均匀稀疏模型需要更复杂的工程和计算基础设施。目前大多数面向视觉的机器学习系统仅通过卷积来利用空间域的稀疏性。然而,卷积是作为到较早层中patch的密集连接的集合来实现的。ConvNets自[LeNet-5]以来一直在特征维上使用随机稀疏连接表来打破对称性,提高学习能力,但为了进一步优化并行计算,趋势又回到了[AlexNet]的全连接。目前最先进的计算机视觉体系结构具有统一的结构。更多的滤波器和更大的批处理大小允许高效地使用密集的计算。

 这就提出了一个问题,是否还有希望实现下一个中间步骤:像理论所建议的那样,使用滤波器级别的稀疏性,但通过使用密集矩阵上的计算来利用我们当前的硬件的体系结构。关于稀疏矩阵计算的大量文献表明,将稀疏矩阵聚类成相对密集的子矩阵,往往会使稀疏矩阵乘法具有竞争性能。认为在不久的将来,类似的方法将被用于非统一的深度学习体系结构的自动化构建,似乎并不牵强。

 Inception体系结构最初是作为一个案例研究来评估复杂网络拓扑构造算法的假设输出的,该算法试图逼近[Provable bounds for learning some deep representations]所暗示的视觉网络的稀疏结构,并通过密集的,易于获得的组件来覆盖假设的结果。尽管这是一个高度投机的工作,但与基于[Network in network]的参考网络相比,在早期观察到了适度的收益。稍加调整,差距就扩大了,作为[Rich feature hierarchies for accurate object detection and semantic segmentation]和[Scalable object detection using deep neural networks]的基础网络,Inception在定位和目标检测的背景下被证明特别有用。有趣的是,虽然大多数最初的架构选择都在分离中受到了彻底的质疑和测试,但是它们在接近局部最优。不过,我们必须谨慎:尽管Inception架构已经成为计算机视觉领域的一个成功案例,但这是否可以归因于导致其构建的指导原则,仍然是个疑问。确保这一点将需要更彻底的分析和验证。

4. 架构细节

 Inception架构的主要思想是考虑卷积视觉网络的最优局部稀疏结构是如何被现成的密集组件逼近和覆盖的。注意,假设平移不变性意味着我们的网络将由卷积构建块构建。我们所需要的是找到最优的局部结构,并在空间上重复它。Arora等人提出了一种分层结构,在这种结构中,我们应该分析最后一层的相关统计数据,并将其聚类为具有高相关性的单元组。这些聚类构成下一层的单元,并与上一层中的单元连接。我们假设来自先前层的每个单元对应于输入图像的某个区域,这些单元被分组到滤波器组中。在较低的层(靠近输入的层)中,相关单元将集中在局部区域。因此,我们最终会得到很多聚类,它们集中在一个区域中,并且可以在下一层中被 1 × 1 1\times 1 1×1卷积层覆盖,如[Network in network]中所建议的。然而,我们也可以料想到,在更大的patch上,能够被卷积覆盖的空间分布更广的聚类的数量会更少,而在越来越大的区域上,patch的数量会越来越少。为了避免patch对齐问题,当前的Inception体系结构被限制在 1 × 1 1\times 1 1×1 3 × 3 3\times 3 3×3 5 × 5 5\times 5 5×5的滤波器大小;这个决定更多地是基于方便而不是必要性。这还意味着,建议的体系结构是所有这些层的组合,它们的输出过滤器组连接成一个输出向量,形成下一阶段的输入。此外,由于池化操作对于当前卷积网络的成功至关重要,因此建议在每个这样的阶段添加一个可选的并行池化路径也应该有额外的好处(参见图2(a))。

《Going Deeper with Convolutions》论文笔记_第2张图片
图2. Inception模块

 由于这些“Inception模块”彼此堆叠在一起,它们的输出相关统计数据必然会有所不同:随着更高抽象的特性被更高的层捕获,它们的空间集中度预计会降低。这说明当我们移动到更高的层时, 3 × 3 3\times 3 3×3 5 × 5 5\times 5 5×5的卷积的比例应该增加。

 上述模块的一个大问题是,至少在这种简单的形式下,即使是少量的5×5卷积,在具有大量滤波器的卷积层上也可能非常昂贵。一旦将池化单元添加到组合中,这个问题就变得更加突出:输出滤波器的数量等于前一阶段的滤波器数量。池化层的输出与卷积层的输出合并,将不可避免地导致输出数量逐级增加。虽然这种体系结构可能覆盖了最优的稀疏结构,但它的效率非常低,导致在几个阶段内计算量激增。

 这就引出了Inception架构的第二个想法:在计算需求增加过多的地方明智地减少维度。这是基于嵌入的成功:即使是低维嵌入也可能包含大量关于相对较大的图像patch的信息。然而,嵌入信息以密集、压缩的形式表示信息,压缩信息更难处理。在大多数地方,表示应该保持稀疏(根据[Provable bounds for learning some deep representations]的条件所要求的),并且仅在必须集中信号时才压缩它们。也就是说,在昂贵的 3 × 3 3\times 3 3×3 5 × 5 5\times 5 5×5卷积之前,使用 1 × 1 1\times 1 1×1卷积减少计算量。除了用于缩减计算量,它们还包括使用整流线性激活使它们具有双重用途。最终结果如图2(b)所示。

 通常,Inception网络是由上述类型的模块组成的网络,这些模块相互堆叠,偶尔使用带有stride为2的最大池化层来将网格的分辨率减半。出于技术原因(训练期间的内存效率),开始仅在较高层使用Inception模块,同时保持较低层的传统卷积方式似乎是有益的。这不是严格必要的,只是反映了我们当前实施中的一些基础设施的效率低下。

 这种体系结构的一个有用的方面是,它允许在每个阶段显著增加单元的数量,而不会在后期阶段造成计算复杂性的失控膨胀。这是通过在昂贵的大尺寸卷积之前普遍使用降维来实现的。此外,该设计遵循了视觉信息在不同尺度下处理和聚合的实践直觉,使下一阶段可以同时从不同尺度上抽象特征。

 计算资源的改进使用允许在不陷入计算困难的情况下增加每个阶段的宽度和阶段的数量。您可以利用Inception架构来创建稍差但计算上更便宜的版本。我们发现,所有可用的旋钮和杠杆(knobs and levers)都可实现计算资源的受控平衡,从而使网络的运行速度比具有非Inception架构的类似性能的网络快3到10倍,但是这时需要仔细的手动设计。

5. GoogLeNet

 “GoogLeNet”这个名字指的是我们提交给ILSVRC 2014竞赛的Inception架构的特定化身。我们还使用了一个更深更广的Inception网络,它的质量稍好一些,但是将它添加到集成中似乎只能略微改善结果。我们忽略了网络的细节,因为经验证据表明,确切的架构参数的影响相对较小。表1展示了竞赛中最常见的Inception实例。在本实验的7个模型中,有6个模型采用了该网络(使用不同的图像patch采样方法训练)。

《Going Deeper with Convolutions》论文笔记_第3张图片
表1. GoogLeNet架构的GoogLeNet化身

 所有的卷积,包括Inception模块内部的卷积,都使用经过整流的线性激活。在RGB颜色空间中,我们的网络中感受野的大小为224×224,均值为零。“# 3 × 3 3\times 3 3×3 reduce”和“# 5 × 5 5\times 5 5×5 reduce”表示在进行 3 × 3 3\times 3 3×3 5 × 5 5\times 5 5×5卷积之前使用的缩减层中 1 × 1 1\times 1 1×1滤波器的个数。在pool proj列中,可以看到投影层中内置max-pooling之后 1 × 1 1\times 1 1×1滤波器的数量。
所有这些缩减/投影层也使用了整流的线性激活。

 该网络的设计考虑了计算效率和实用性,因此可以在单个设备上运行推理,甚至包括那些计算资源有限的设备,特别是内存占用较低的设备。如果只计算带参数的层,则网络深度为22层(如果还计算池化,则为27层)。用于网络构建的总层数(独立的构建块)约为100。确切的数字取决于机器学习基础设施如何计算层数。分类器之前使用的平均池是基于[Network in network]的,尽管我们的实现有一个额外的线性层。线性层使我们能够很容易地使我们的网络适应其他标签集,但是它主要是为了方便而使用的,我们并不期望它会产生重大影响。我们发现,从全连接层转移到平均池化后,top-1准确性提高了约0.6%,但是即使删除了完全连接的层之后,仍然必须使用dropout。

 考虑到网络的深度相对较大,以有效的方式将梯度传播回所有层的能力是一个问题。浅层网络在这一任务上的较强性能表明,网络中间各层所产生的特征应具有很强的判别能力。通过添加连接到这些中间层的辅助分类器,可以期望在分类器的较低阶段进行区分。这被认为是为了在提供正则化的同时对抗梯度消失问题。这些分类器以较小的卷积网络的形式放在Inception(4a)和(4d)模块输出之上。在训练过程中,它们的损失以折现权值加到网络的总损失中(辅助分类器的损失加权为0.3)。在推理时,这些辅助网络被丢弃。之后的控制实验表明,辅助网络的效果相对较小(约0.5%),只需要其中一个网络就可以达到同样的效果。

 额外网络(包括辅助分类器)的确切结构如下:

  • 平均池化层,滤波器大小为 5 × 5 5\times 5 5×5,步长为3,在(4a)阶段级输出 4 × 4 × 512 4\times 4\times 512 4×4×512,在(4d)阶段输出 4 × 4 × 528 4\times 4\times 528 4×4×528

  • 具有128个滤波器的 1 ×   1 1\times\ 1 1× 1的卷积进行降维和整流线性激活。

  • 1024个单元的全连接层,整流线性激活。

  • 具有70%输出丢弃率的dropout层。

  • 以softmax loss作为分类器的线性层(预测与主分类器相同的1000个类,但在推断时删除)。

 结果网络的示意图如图3所示。

《Going Deeper with Convolutions》论文笔记_第4张图片
图3. GoogLeNet网络,包含所有的功能

6. 训练方法

 GoogLeNet网络使用DistBelief分布式机器学习系统进行训练,使用少量的模型和数据并行性。虽然我们只使用了基于CPU的实现,但粗略的估计表明,GoogLeNet网络可以在一周内使用很少的高端GPU训练到收敛,主要限制是内存的使用。我们的训练采用了momentum为0.9的异步随机梯度下降,固定学习速率调度(每8个epoch降低4%的学习速率)。使用Polyak平均创建推理时使用的最终模型。

 在比赛开始前的几个月里,图像采样方法已经发生了很大的变化,已经收敛的模型还接受了其他选项的训练,有时还会结合改变的超参数,比如dropout和学习率。因此,很难对训练这些网络的最有效的单一方法给出明确的指导。更复杂的是,受[Some improvements on deep convolutional neural network based image classification.]的启发,一些模型主要针对相对较小的crop,另一些则针对较大的crop。尽管如此,一项经验证在比赛后效果很好的方法包括对各种尺寸的图像patch进行采样,这些patch的大小均匀地分布在图像区域的8%和100%之间,且长宽比限制在区间 [ 3 4 , 4 3 ] [\frac{3}{4},\frac{4}{3}] [43,34]。此外,我们还发现Andrew Howard的光度畸变对克服训练数据成像条件的过拟合是有用的。

7. ILSVRC 2014分类挑战的设置和结果

 ILSVRC 2014分类挑战包括将图像分类为Imagenet层次结构中的1000个叶节点类别之一。大约有120万张用于训练的图像,5万张用于验证,10万张用于测试。每个图像都与一个ground truth类别相关联,性能是基于得分最高的分类器预测来测量的。通常报告两个数字:top-1准确率,将ground truth与第一个预测类进行比较;top-5错误率,将ground与前5个预测类进行比较:如果ground truth在前五名之内,则不论该图片在其中的排名如何,都将其视为正确分类。该挑战使用top-5错误率进行排名。

 我们在没有外部数据用于训练的情况下参加了挑战。除了本文提到的训练技术外,我们还在测试中采用了一套技术来获得更高的性能,下面我们将对此进行描述。

  1. 我们独立训练了7个版本相同的GoogLeNet模型(包括一个更大的版本),并使用它们进行了集成预测。这些模型使用相同的初始化(由于疏忽,甚至使用相同的初始权重)和学习速率策略进行训练。它们只是在采样方法和随机输入图像顺序上有所不同。

  2. 在试验过程中,我们采用了比Krizhevsky等人的[Imagenet classification with deep convolutional neural networks]更激进的crop方法。具体来说,我们将图像大小调整为4个尺度,其中较短的维度(高或宽)分别为256、288、320和352,取这些调整了大小的图像的左、中和右正方形(对于人像图像,取顶部、中部和底部正方形)。对于每个正方形,我们取四个角和中间的 224 × 224 224\times 224 224×224crop,以及大小调整为 224 × 224 224\times 224 224×224的正方形,以及它们的镜像版本。这样就得到每张图 4 × 3 × 6 × 2 = 144 4\times 3\times 6\times 2=144 4×3×6×2=144个crop。Andrew Howard在前一年的比赛中也使用了类似的方法,我们通过经验验证,该方法的性能略差于提议的方案。我们注意到,这种激进的crop在实际应用中可能没有必要,因为在出现合理数量的crop之后,更多crop的效益就会变得微不足道(我们稍后将说明这一点)。

  3. 对多个crop和所有分类器的softmax概率进行平均,以获得最终的预测结果。在我们的实验中,我们分析了验证数据的替代方法,如crop上的最大池化和分类器上的平均,但与简单的平均相比,它们的性能较差。

 在本文的其余部分中,我们分析了影响最终提交的总体性能的多个因素。

 我们的最终提交在验证和测试数据上都获得了6.67%的top-5错误率,在其他参与者中排名第一。这与2012年的监督方法相比,相对减少了56.5%,与前一年的最佳方法(Clarifai)相比,相对减少了约40%。这两种方法都使用外部数据来训练分类器。表2显示了过去3年中一些性能最好的方法的统计数据。我们还在表3中通过预测图像时改变模型的数量和使用的crop的数量来分析和报告多种测试选择的性能。当我们使用一个模型时,我们选择验证数据上top-1错误率最低的模型。所有数字均报告在验证数据集上,以免过度拟合测试数据统计信息。

《Going Deeper with Convolutions》论文笔记_第5张图片
表2. 分类性能
《Going Deeper with Convolutions》论文笔记_第6张图片
表3. GoogLeNet分类性能分解

8. ILSVRC 2014检测挑战的设置和结果

 ILSVRC检测任务是在200个可能的类中生成图像中目标周围的包围框。如果检测到的目标与ground truth类匹配,并且它们的边界框重叠至少50%(使用Jaccard索引),那么它们就被认为是正确的。额外的检测被认为是假阳性(false positive),会受到惩罚。与分类任务相反,每个图像可能包含许多对象,也可能不包含任何对象,并且它们的大小可能不同。结果使用mAP报告。GoogLeNet的检测方法类似于R-CNN,但是用Inception模型作为区域分类器进行了扩充。此外,区域proposal步骤通过结合选择性搜索方法和多框预测来提高目标边界框的召回率。为了减少false positive的次数,超像素尺寸增加了2倍。这将来自选择性搜索算法的proposal减半。我们从multi-box中添加了200个区域proposal,总共占[Rich feature hierarchies for accurate object detection and semantic segmentation]使用proposal的60%,同时将覆盖范围从92%增加到93%。减少增加覆盖率的proposal数量的总体效果是单个模型案例的mAP提高了1%。最后,我们使用6个GoogLeNets的集成对每个区域进行分类。这将准确率从40%提高到43.9%。注意,与R-CNN相反,由于缺少时间,我们没有使用边界框回归。

 我们首先报告最好的检测结果,并显示自第一版检测任务以来的进展。与2013年的结果相比,准确率几乎翻了一番。表现最好的团队都使用卷积网络。我们在表4中报告了官方评分和每个团队的常见策略:使用外部数据、集成模型或上下文模型。外部数据通常是用于训练模型的ILSVRC12分类数据,然后在检测数据上进行微调。一些团队还提到了定位数据的使用。由于定位任务边界框的很大一部分没有包含在检测数据集中,因此可以使用这些数据对一般的边界框回归器进行预训练,方法与分类进行预训练相同。GoogLeNet没有使用定位数据进行训练。

《Going Deeper with Convolutions》论文笔记_第7张图片
表4. 检测性能比较。未报告的值用问号表示。

 在表5中,我们仅使用一个模型比较结果。表现最好的模型是Deep Insight提供的而且令人惊讶的是,3个模型的集成才提高了0.3点,而GoogLeNet通过集成则获得了明显更强的结果。

《Going Deeper with Convolutions》论文笔记_第8张图片
表5. 单模型检测性能

9. 结论

 我们的结果提供了一个坚实的证据,即用现成的密集构建块逼近期望的最佳稀疏结构是改进计算机视觉神经网络的可行方法。这种方法的主要优点是,与较浅、较窄的体系结构相比,在计算需求适度增加的情况下,可以显著提高质量。

 我们的目标检测工作很有竞争力,尽管我们没有使用上下文,也没有执行边界框回归,这进一步证明了Inception架构的优势。

 对于分类和检测,通过更昂贵的具有相似深度和宽度的非Inception类型网络可以获得相似的结果质量。尽管如此,我们的方法仍然提供了坚实的证据,表明迁移到更稀疏的体系结构通常是可行和有用的。这表明了未来的工作,以[Provable bounds for learning some deep representations]为基础,以自动化的方式创建稀疏和更精细的结构,以及将Inception架构的见解应用于其他领域。


个人看法

 这篇文章是Inception系列的开山之作,其受生物学上视觉处理的多尺度的启发,用了一个多分支结构,在各个分支里用不同大小的卷积核达到提取多尺度特征的目的。同时由于较大的卷积核( 3 × 3 3\times 3 3×3 5 × 5 5\times 5 5×5)在通道数较多时计算代价很高,故又在这些卷积核之前用了 1 × 1 1\times 1 1×1卷积来减少输入通道数。Inception V1不同于VGG那种拓展网络深度来提高精度的方法,它主要还是以一种高效的方式拓展网络的宽度,同样来达到提高精度的目的。

你可能感兴趣的:(图像分类,Inception系列)