视觉模型中的某些神经元是我们并不特别惊讶的功能。例如,曲线检测器是视觉系统具有的非常自然的功能。实际上,它们已经在动物视觉皮层中被发现。很容易想象曲线检测器是如何从早期的边缘检测器中构建出来的,并且很容易猜测为什么曲线检测可能对其余的神经网络有用。
另一方面,高低频检测器似乎更令人惊讶。它们不是我们期望先验发现的功能。然而,当系统地表征InceptionV1的早期层时,我们发现了15个mixed3a神经元,似乎在一侧检测到高频模式,而在另一侧检测到低频模式。
这里的“高频”和“低频”是指空间频率,就像我们对图像进行傅立叶变换时一样。
我们可能会对研究神经网络的电路方法感到担心的是,我们可能只能理解有限的一组高度直观的功能。高低频检测器表明,至少可以理解一些不直观的功能。
我们如何确定“高低频探测器”实际上是在探测从低空间频率到高空间频率的方向转换?我们将依靠三种方法:
特征可视化使我们能够在每个神经元与其功能之间建立因果关系。
在本文的后面,我们将深入探讨如何实现和使用它们的机制细节。我们将能够理解实现它们的算法,从而确认它们检测到从高到低的频率转换。
特征可视化是经过优化以引发单个特定神经元的最大激活的合成输入。特征可视化是从随机噪声开始构建的,因此特征可视化中从随机噪声改变的每个像素都在那里,因为它导致神经元更强烈地激活。这建立了因果联系!特征可视化中显示的行为是导致神经元触发的行为:
从它们的特征可视化中,我们观察到所有这些高低频检测器具有以下相同特征:
检测相邻的高频和低频。检测器的一侧响应高频,另一侧响应低频。
旋转等方差。检测器在旋转方面是等距的:每个单元都沿特定角度检测高低频变化,而不同的单元则跨越整个360º可能的方向。当我们使用综合示例构建一条调谐曲线时,以及在考虑实现这些检测器的权重时,我们将更详细地看到这一点。
我们可以在特征可视化中使用多样性术语来共同优化神经元的激活,同时在一批可视化中鼓励不同的激活模式。因此,我们有理由相信,如果高低频检测器也对其他模式敏感,我们将在这些功能可视化中看到它们的迹象。相反,频率对比仍然是所有这些可视化的不变方面。 (尽管沿边界形成了其他模式,但这些模式很可能超出了神经元的有效接受范围。)
我们通过从自然数据分布(在这种情况下为训练集)中采样并选择导致神经元最大程度激活的图像来生成数据集示例。对照这些示例有助于确保我们不会误读功能部件的可视化效果。
现实世界中的各种情况都可能导致高低频探测器着火。通常,它是一个背景模糊的高度对焦的前景对象,例如,前景可能是麦克风的网格,蜂鸟的细小的头部羽毛或Lenovo ThinkPad指点杆上的小橡胶点。但并非总是这样:我们还观察到,它为MP3播放器的金属拉丝饰面在其闪亮的屏幕或带有水印的文本上触发。
在所有情况下,我们看到一个区域处于高频状态,而另一个区域处于低频状态。尽管它们通常在对象边界处触发,但在频率变化无对象边界的情况下也可以触发。因此,高低频检测器与边界检测器不同。
调整曲线向我们展示了神经元的响应如何相对于参数变化。它们是神经科学中的标准方法,并且我们发现它们对于研究人工神经网络也非常有帮助。例如,我们使用它们来演示曲线检测器的响应如何随方向变化。同样,我们可以使用调谐曲线来显示高低频检测器的响应。
要构建这样的曲线,我们需要一组合成刺激,这些刺激会引起高低频探测器触发。我们生成的图像的一侧是高频模式,另一侧是低频模式。由于我们对方向感兴趣,因此我们将旋转此模式以创建一维刺激系列:
但是我们应该为每侧使用什么频率?频率差异需要有多陡?为了对此进行探讨,我们将添加第二个维度,以改变两个频率之间的比率:
(添加第二个维度也将有助于我们了解第一个维度的结果是否可靠。)
现在我们有了这两个维度,我们对合成刺激进行了采样,并绘制了每个神经元对它们的反应:
每个高低频检测器都对有限的定向范围表现出明显的偏爱。正如我们之前在曲线检测器中发现的那样,高低频检测器在旋转方面是等距的:每个检测器都选择给定的方向,并且它们一起跨越整个360º空间。
低级神经元如何构建高低频检测器?可以想象可以实现这种行为的许多不同电路。仅举一个例子,这些单位的定向性质似乎至少存在两种不同的方式。
等变→等变假设。第一种可能性是前一层已经具有检测从高频到低频的定向过渡的前驱特征。该假设的极端形式是,高频检测器只是某些较低层神经元的身份传递。比较温和的版本将类似于我们在曲线检测器中看到的情况,其中早期的曲线检测器被精炼为更大,更复杂的后期曲线检测器。另一个示例是如何从已经定向的简单Gabor滤波器构建边缘检测。之所以称其为等变量→等变量,是因为在上一层中已经存在取向的等方差。
不变→等变假设。另外,先前的层可能没有像高低频检测器那样的东西。取而代之的是,方向可能来自神经元权重中的空间排列,这些空间决定了低频和高频特征激发神经的位置。
为了解决这个问题,我们将着眼于权重,并且更广泛地理解这些探测器的实现方式。
让我们看一个检测器。从conv2d2到blend3a 110的权重来看,它们中的大多数可以大致分为两类:在左侧激活并在右侧抑制的那些,以及相反执行的那些。
其他每个高频探测器也是如此,但是,当然,它们具有不同的空间模式。此外,每列砝码的1-2-1模式令人惊讶地让人联想到Sobel滤波器的结构。 。权重,实施不同的方向。
令人惊讶的是,在所有高低频检测器中,我们为每个神经元获得的两个神经元簇实际上是相同的两个簇!一个群集似乎以一般的频率检测纹理,而一个群集似乎以一般的频率检测纹理。
如果不变量→等变量假设成立,这就是我们所期望的:每个高低频检测器在不同的空间排列中组成相同的两个分量,然后依次控制检测器的方向。
这两个不同的集群确实令人震惊。在下一部分中,我们将对其进行详细调查。
如果我们可以确认这两个神经元簇是真实的,那就太好了。如果我们可以创建一种更简单的方法来表示它们以便稍后进行电路分析,那也将是很好的。
分解两个相邻层之间的连接,“连接”减少到两个层之间的权重。有时,我们对观察可能不直接相邻的图层之间的连通性感兴趣。因为我们的模型(一个深层的卷积网络)是非线性的,所以我们需要近似连接。我们采用的一种简单方法是通过消除非线性来线性化模型。尽管这并不是模型行为的近似值,但确实为反事实影响提供了合理的直觉:中间层的神经元被激发了,它将如何影响下游层的神经元。我们分别处理正面和负面影响。在较低的层和高低频检测器之间进行检查是一种方法,我们可以检查这两个群集是否有意义,并研究它们的重要性。执行单面非负矩阵分解(NMF)我们要求通道因子为正,但允许空间因子同时具有正值和负值。将连接分为两个因素。
每个因子对应于神经元上的向量。特征可视化还可以用于可视化神经元的这些线性组合。令人惊讶的是,一个清晰地显示了普通的高频图像,而另一个清晰地显示了低频图像。特别是在InceptionV1中,我们可能会如此快地恢复这两个因素,部分原因是conv2d2和blend3a之间存在3x3瓶颈。因此,我们不是在这里查看conv2d2和mixed3a之间的直接权重,而是“扩展权重”,它是1x1卷积(减少到少量神经元)和3x3卷积的乘积。这种结构与我们应用的分解非常相似。但是,正如我们稍后在“通用性”中看到的那样,我们为不存在此瓶颈的其他模型恢复了类似的因素。 NMF使您可以轻松地在许多模型中看到这种抽象电路,这些模型可能没有更明确地对其进行架构化的体系结构。我们将这些称为HF因子和LF因子:
特征可视化具有启发性,但是我们如何才能确保这些因素总体上确实对应于高频和低频,而不是特定的高频或低频模式?我们可以做的一件事是再次创建合成刺激,但现在绘制这两个NMF因子的响应。
由于我们的因素与边缘不符,因此我们的综合刺激只会对每个刺激有一个频率区域。为了增加第二维并再次显示出鲁棒性,我们还更改了该区域的旋转。 (频率纹理并不是精确地旋转不变的,因为我们是根据正交余弦波构造激励的。)
与上一次不同,这些激活现在大多数情况下会忽略图像的方向,但是对频率敏感。我们可以在所有方向上对这些结果求平均值,以便生成一个简单的调整曲线,以了解每个因素对频率的响应方式。如预测的那样,HF因子响应高频,而LF因子响应低频。
现在我们已经确认了这些因素是什么,让我们看看如何将它们组合到高低频检测器中。
NMF将权重分解为通道因子和空间因子。到目前为止,我们已经研究了渠道因素的两个部分。空间因数显示将HF和LF因数组合到高低频检测器中的空间权重。
毫不奇怪,这些权重基本上从图5中的两个不同的神经元簇中复制出了相同的模式:在HF因子抑制的情况下,LF因子激活了-反之亦然。顺便说一句,这里的InceptionV1的HF因子(以及它的一些NMF组件,例如conv2d2 123)似乎也被亮绿色和洋红色轻微激活。这可能是这些高低频检测器的功能可视化的原因,这些检测器在高频侧仅显示绿色和品红色。
因此,高低频检测器由在一侧布置高频检测而在另一侧布置低频检测的电路构成。
NMF因数分解视角无法完全捕获某些例外。例如,conv2d2 181是纹理对比检测器,看起来已经具有空间结构。这是我们期望通过等变→等变电路所涉及的那种功能。但是,如果是这样的话,我们可以预期它在混合器3a 70上的权重将是一个坚实的正条纹。相反,我们观察到的是,它可能是高频检测的组成部分,尽管总体上可能会有轻微的正偏差。尽管conv2d2 181具有空间结构,但它对高频模式的响应可能更强。
现在我们了解了它们的结构,高级功能如何使用高低频检测器?
mixed3b是紧接在高低频检测器之后的下一层。在此,高低频检测器具有多种功能。它们最重要的作用似乎是在支持边界检测器,但它们也会导致凹凸不平,线状和曲线状以及中心周围,图案和纹理中的至少一种。
通常,下游特征似乎忽略了高低频检测器的“极性”,无论高频是哪一侧,其响应方式都大致相同。例如,垂直边界检测器mixed3b 345(参见上文)被高低频检测器强烈激发,该检测器检测沿垂直线在任一方向上的频率变化。
高低频检测器的激活可以帮助检测不同对象之间的边界,而高低频检测器的抑制功能也可以通过检测必须沿某个方向连续的区域来增加对象检测器的结构。边界。
正如我们已经提到的,到目前为止,高低频检测器对下游的主要贡献是边界检测器。在所有高低频检测器中,mixed3b中具有最高L2范数权重的前20个神经元中,这20个神经元中有8个参与某种边界检测:双边界检测器,其他边界检测器,尤其是对象边界检测器。
物体边界检测器是检测物体之间边界的神经元,无论这意味着一个物体与另一个物体之间的边界,还是从前景到背景的过渡。它们与边缘检测器或曲线检测器不同:尽管它们对边缘敏感(实际上,它们最重的权重是由较低级别的边缘检测器贡献的!),但对象边界检测器还对其他指标(例如颜色对比度和高色度)敏感。 -低频检测。
高低频检测器通过提供一个物体已经结束而其他事物已经开始的证据来为这些物体边界检测器做出贡献。下面显示了对象边界检测器的一些示例,以及它们的权重(按方向(忽略极性)分组)选择的高低频检测器。
特别要注意每个分组中的权重有多相似!这再次向我们表明,后面的层忽略了高低频检测器的极性。此外,按照上述原则,兴奋性和抑制性权重的排列有助于每个边界检测器的整体形状。
除了mixed3b以外,高低频检测器还通过继续为边界和连续性的检测做出贡献,最终在检测mixed4a及更高版本中更复杂的对象形状中发挥了作用。
到目前为止,我们的研究范围仅限于InceptionV1。卷积神经网络中的高低频检测器通常有多普遍?
总是问我们看到的是该规则还是一个有趣的例外情况—高低频检测器似乎是该规则。与InceptionV1类似的高低频检测器可以在多种架构中找到。
请注意,这些探测器在不同网络中的深度非常相似,在网络深度的29%到33%之间!网络深度在此定义为层的索引除以层总数。尽管每个网络的高低频检测器响应的特定方向可能会略有不同,但每个网络都有自己的检测器系列,这些检测器共同覆盖整个360º并包括旋转等变系列。除了架构之外,在基本不同的数据集上训练的网络又如何呢?在极端的情况下,可以想象一个合成数据集,其中不会出现高低频检测器。但是,对于大多数实用的数据集,我们希望找到它们。例如,我们甚至在AlexNet(场所)中找到一些候选的高低频检测器:上下,左右和上下。
即使这些系列来自三个完全不同的网络,我们也发现它们的高低频检测器是由高频和低频分量构成的。
正如我们对InceptionV1所做的那样,我们可以再次对每个网络中的高低频检测器的权重执行NMF,以提取最强的两个因素。
就像我们在InceptionV1中发现的那样,这两个因子的特征可视化揭示了一个清晰的HF因子和一个清晰的LF因子。此外,这两个因素的权重再次非常接近对称。
因此,我们较早的结论也适用于这些不同的网络:高低频检测器是由高频分量和低频分量的特定空间排列构成的。
尽管高低频检测器代表了我们不一定期望在神经网络中找到的功能,但我们发现我们仍然可以使用为探索电路而构建的可解释性工具来探索和理解它们:NMF,特征可视化,合成刺激等。
我们还了解到,高低频检测器是由可理解的低级部分组成的,并且已经展示了它们如何为后来的高级功能做出贡献。最后,我们已经看到,高低频检测器在多种网络架构中很常见。
鉴于普遍性的观察,我们可能想知道高低频检测器的存在是否真的不是那么不自然。我们甚至可以在AlexNet Places中找到近似的高低频检测器,其训练数据完全不同。除了神经网络之外,摄影者将散焦图像的模糊区域赋予的美学特质也称为散景。在VR中,视觉模糊可以提供有效的景深提示,或者相反,在实施时会引起用户恶心
......