Visualizing and Understanding Convolutional Networks

Abstract

  • 大型卷积网络模型最近在ImageNet基准测试中表现出令人印象深刻的分类性能。然而,对于他们为什么表现如此出色,或者如何改进,还没有明确的理解。在本文中,我们讨论了这两个问题。我们介绍了一种新的可视化技术,它可以深入了解中间特征层的功能和分类器的操作。
  • 我们还进行了烧蚀研究,以发现不同模型层的性能贡献。我们展示了我们的ImageNet模型与其他数据集的通用性:当SoftMax Classifier重新训练时,它令人信服地击败了CalTech-101和CalTech-256数据集的当前最新结果。

Introduction

  • 自从1990年初(Lequa等人,1989年)介绍以来,卷积网络(卷积网络)在诸如手写数字分类和面部检测等任务中展示了优异的表现。在过去的一年中,有几篇论文表明,它们还可以在更具挑战性的视觉分类任务上提供出色的性能。(Ciresan等人,2012)展示了Norb和Cifar-10数据集的最先进性能。
  • 尽管取得了令人鼓舞的进展,但对于这些复杂模型的内部操作和行为,以及它们如何实现如此良好的性能,人们仍然知之甚少。从科学的角度来看,这是非常不令人满意的。如果不清楚它们是如何工作的以及为什么工作的,那么更好的模型的开发将被简化为试验和错误。
  • 在本文中,我们介绍了一种可视化技术,它揭示了在模型的任何层激发单个特征图的输入刺激。它还允许我们在训练期间观察特征的演变,并用模型诊断潜在的问题。我们提出的可视化技术使用多层反卷积网络(decovnet),如(Zeiler等人,2011)所提议的,将特征激活投影回输入像素空间。我们还通过阻塞输入图像的部分来对分类输出进行敏感度分析,揭示场景的哪些部分对分类很重要。
  • 使用这些工具,我们从(Krizhevsky等人,2012)的架构入手,探索不同的架构,发现那些在Imagenet上优于其结果的架构。然后,我们探索模型对其他数据集的泛化能力,只需在顶部重新培训SoftMax分类器。因此,这是一种有监督的预训形式,与普及的无监督预训方法形成对比。
  • 可视化特征以获得对网络的直觉是常见的实践,但主要局限于第一层,在第一层可以投影到像素空间。在更高层,情况并非如此,解释活动的方法也有限。相比之下,我们的方法提供了不变性的非参数视图,显示了训练集中的哪些模式激活了特征映射。(Donahue等人,2013)显示了可视化,这些可视化可以识别数据集中负责在模型中更高层进行强激活的补丁。我们的可视化效果并不只是输入图像的作物,而是自上而下的投影,显示每个补丁中刺激特定功能图的结构。

Approach

  • 我们使用大量N个标记图像来训练这些模型,其中标签是指示真实类的离散变量。 适用于图像分类的交叉熵损失函数用于比较。 通过反向传播相对于整个网络中的参数的损耗的导数来训练网络的参数,并通过随机梯度下降来更新参数。
  • 理解convnet的操作需要解释中间层中的特性活动。我们提出了一种将这些活动映射回输入像素空间的新方法,显示了什么输入模式最初导致了特征映射中给定的激活。我们使用Deconvolutional Network(deconvnet)执行此映射(Zeiler等,2011)。 deconvnet可以被认为是一个使用相同组件(过滤,池化)的反序列模型,但相反,所以不是将像素映射到特征,而是相反。在(Zeiler等,2011)中,提出了Deconvents为执行无监督学习的方式。 在这里,它们不会用于任何学习能力,就像对已经训练过的网络的探索一样。
  • 在convnet中,max pooling操作是不可逆的,但是我们可以通过在一组开关变量中记录每个pooling区域中maxima的位置来获得近似的逆运算。在deconvnet中,反池化操作使用这些转换将来自上层的重建放置到适当的位置,从而保留刺激的结构。
  • convnet使用relu非线性,对特征图进行校正,从而确保特征图始终为正。为了在每一层获得有效的特征重构(也应该是正的),我们通过一个relu非线性传递重构信号。
  • convnet使用已学习的过滤器将前一层的特征图卷积起来。要反转这一点,deconvnet使用相同过滤器的转置版本,但应用于校正图,而不是下面层的输出。实际上,这意味着垂直和水平地浮动每个过滤器。
  • 从更高层向下投影使用convnet中最大池化在向上的过程中生成的开关设置。由于这些开关设置是给定输入图像特有的,因此从单个激活获得的重建类似于原始输入图像的一小部分,其结构根据其对特征激活的贡献进行加权。

Training Details

  • 该模型在IMAGENET 2012培训集上进行了训练。每个RGB图像都经过预处理,方法是将最小尺寸调整为256,裁剪中心256x256区域,减去每像素平均值(在所有图像上),然后使用10个不同的子区域,尺寸为224x224(角点+中心,水平(水平))。 使用具有128的小批量大小的随机梯度下降来更新参数,从学习速率10-2开始,结合动量项0.9。
  • 第一层过滤器在培训期间的可视化显示,其中一些过滤器占主导地位。为了解决这个问题,我们将卷积层中的每一个过滤器重新规格化,将RMS值超过固定半径10-1的滤波器改变到该固定的半径。这一点非常重要,尤其是在模型的第一层,输入图像大致在[-128128]范围内。

Convnet Visualization

  • 我们不显示给定功能图的单一最强激活,而是显示前9个激活。将每一个单独投影到像素空间会显示激发给定特征图的不同结构,从而显示其对输入变形的不变性。除了这些可视化效果之外,我们还显示了相应的图像补丁。它们比可视化有更大的变化,因为后者只关注每个补丁中的鉴别结构。每个层的投影显示了网络中特征的层次性。第2层响应角和其他边缘/颜色连接。第3层有更复杂的不变性,捕捉相似的纹理。第4层显示了显著的变化,但更为特殊:狗脸;鸟腿。第5层显示了具有显著姿势变化的整个对象,例如键盘和狗。
  • 图4显示了在投影回像素空间的给定特征图中,最强激活(在所有训练示例中)的训练过程中的进展。外观的突然跃迁是由图像中最强烈的激活源的变化引起的。模型的下层可以看到在几个时期内收敛。然而,上层仅在相当多的时期(40-50年)之后发展,表明需要让模型训练直到完全收敛。
  • 图5显示了5个被不同程度地变换、旋转和缩放的样本图像,同时观察模型顶层和底层的特征向量相对于未转换特征的变化。小的转换在模型的第一层有显著的效果,但在顶部特征层的影响较小,对于转换和缩放来说是近似线性的。网络输出对于转换和缩放是稳定的。一般来说,除了具有旋转对称性的物体外,输出并不随旋转而变化。
  • 虽然对经过培训的模型进行可视化可以洞察其操作,但它也可以帮助您首先选择好的架构。第一层滤波器是极高频和低频信息的混合,几乎不覆盖中频。此外,第二层可视化显示了第一层卷积中使用的大跨距4导致的混叠伪影。为了解决这些问题,我们(i)将第一层过滤器的尺寸从11x11减小到7x7,并且(ii)迈出了卷积2的步伐,而不是4。
  • 对于图像分类方法,一个自然的问题是模型是否真的确定了对象在图像中的位置,或者仅仅使用周围的上下文。图7试图通过用灰色方块系统地封闭输入图像的不同部分来回答这个问题,并监控类文件的输出。示例清楚地显示了模型正在场景中定位对象,因为当对象被遮挡时,正确类的概率显著下降。
  • 深层模型不同于许多现有的识别方法,因为在不同的图像中,没有明确的机制来建立特定对象部分之间的对应关系。然而,一个有趣的可能性是深层模型可能隐式计算它们。

Discussion

  • 我们探索了大卷积神经网络模型,训练图像分类,在许多方面。首先,我们提出了一种新颖的方法来可视化模型中的活动。这表明这些特征远不是随机的、不可理解的模式。相反,它们显示了许多直观上令人满意的特性,如合成性、增加不变性和在我们提升层时的阶级歧视。我们还展示了如何使用这些可视化来调试模型中的问题,以获得更好的结果,例如对Krizhevsky等人的改进。's(Krizhevsky等人,2012)令人印象深刻的Imagenet 2012结果。然后,我们通过一系列的遮挡实验证明,该模型虽然经过分类训练,但对图像中的局部结构非常敏感,而且不只是使用广泛的场景上下文。对模型的烧蚀研究表明,对网络的最小深度,而不是任何单个截面,对模型的性能至关重要。
  • 最后,我们展示了ImageNet训练模型如何能够很好地推广到其他数据集。对于Caltech-101和Caltech-256,数据集非常相似,我们可以以显著的优势击败最佳报告结果,在后一种情况下。这一结果使小(即<104)训练集的基准的效用受到质疑。我们的convnet模型对pascal数据的概括不太好,可能来自数据集偏差(Torralba和Efros,2011),尽管它仍然在报告的最佳结果的3.2%之内,尽管没有对任务进行调整。例如,如果使用不同的损失函数,允许每个图像有多个对象,我们的性能可能会提高。这自然也会使网络能够处理对象检测。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值