MIND THE PAD – CNNS CAN DEVELOP BLIND SPOTS 论文理解 [author: linkrain]

MIND THE PAD – CNNS CAN DEVELOP BLIND SPOTS 论文理解 [author: linkrain]

论文名称:MIND THE PAD – CNNS CAN DEVELOP BLIND SPOTS
论文作者:Bilal Alsallakh;Narine Kokhlikyan;Vivek Miglani;Jun Yuan;Orion Reblitz-Richardson
论文链接:https://arxiv.org/pdf/2010.02178.pdf

0.The vanishing traffic light

在测试一个能够检测红绿灯的模型的时候,这篇文章的作者遇到了灵异事件:在同一个帧序列中,模型能够以很高的分数检测出其中一帧中出现的红绿灯(远景小目标但可以分辨),然而在下一帧中,模型就完全检测不到它了,同样的场景,同一段视频,同一个红绿灯,甚至下一帧中红绿灯的尺寸应该还比当前帧中的尺寸略大,那么到底是什么让这个红绿灯在下一帧中神秘“消失”了呢?是来自东方的神秘力量吗?显然不是的。作者们秉持着坚决不搞迷信的信念,开始探究这其中的科学奥秘。

1.Spatial artifacts in CNNs

先来看论文中的一张示意图:
MIND THE PAD – CNNS CAN DEVELOP BLIND SPOTS 论文理解 [author: linkrain]_第1张图片
从上图中可以看出,在交通灯检测器的最后一层卷积层输出的特征图边缘,会不定地出现一些语义无关的横线或者竖线,之所以说是语义无关的,就是因为它们实在是太规则了,就像沙漠中的金字塔一样,规则到让人一眼看上去就深深怀疑是人工的产物。

在对于相同卷积核下不同输入图像的特征图求平均后得到的平均特征图上,可以非常明显的看到这些边缘的明暗线,而在对于同一输入图像下全部 512 个卷积核的特征图求平均后得到的平均特征图上,这些边缘明暗线则并没有那么明显,可能的解释是由于每个卷积核特征图只会产生特定位置特定取值偏向的明暗线,所以多个不同卷积核的特征图叠加会弱化这种特异性,而同个卷积核不同输入图像的特征图叠加则会对这种特异性进行叠加,使其更加明显。通过这种现象可以简单推测出,在同个特征图上,这些明暗线的取值顷向与输入图像无关,而与特征图的通道有关。(因此沿通道平均会降低其显著程度,因为各个通道不同的顷向性被平均了)

如果特征图中有部分区域的取值倾向与输入图像无关,那么至少在这些区域上肯定是对网络的正常预测有负面影响的。

作者们用了一种方法来让特征图中存在的这些区域能够更显著地表现出来:使用全 0 值的图像作为输入图像输入网路进行预测,然后将网络中间层的特征图可视化出来,论文中给出的结果图像如下:
MIND THE PAD – CNNS CAN DEVELOP BLIND SPOTS 论文理解 [author: linkrain]_第2张图片
0 值图像作为输入图像,理想的结果应当是所有的特征图沿通道平均后都是一个常数值图像,但上图的结果可以看出,随着网络层数的加深,特征图的边缘越来越明显地出现异于大多数常量值的取值,并且在不同的位置取值也不相同,尽管这里面有深层的特征图分辨率小的原因,但是即使是小分辨率的特征图,在目标检测中也是每个像素都会被映射回原图进行预测的,所以越是深层的特征图,异常区域映射回原图的范围也就越大,从而在更大的范围上对网络预测产生不良影响。

作者在论文中分析道:第二层的特征图的边界上出现的 1 像素的值偏很明显是由于网络中的 0 值 padding 机制造成的,第一个特征图之所以没有出现边界值偏是因为输入的是 0 值图像,0 值 padding 对它不会产生影响。由于后续卷积层中存在的 bias 项会使得后续特征图无法保持 0 值,因此会受到 0 值 padding 机制的影响从而产生边缘值偏。

作者从上图的可视化结果中还注意到一个现象:在出现边缘值偏的平均特征图上,不同方向的边上产生的值偏方向也不同,例如标注为 ReLU 1 的平均特征图上,左边产生了低值偏,而其它三个方向的边上产生的则是不同程度的高值偏。这种不平衡的现象促使作者对各层的卷积核进行了可视化分析,各层卷积核求平均后的可视化结果如下:
在这里插入图片描述

可视化出的各层平均卷积核显示出不同程度的空间取值不平衡。(看到这里的时候我在想,各层卷积核的均值在空间上取值不平衡难道不是正常的吗,卷积核本身就是训练出来用以匹配不同的视觉模式,不同的视觉模式当然具备相当的空间不平衡,即使是在各层上进行了平均,这种不平衡性在某些层上有所倾向不也正常吗?进一步思考的话,不平衡是正常的,但正常的不平衡或许有一个限度,由模式不同造成的不平衡确实是正常的,但如果是由于非平衡的 padding 造成的卷积核不平衡,那么对于网络预测将不只是在特征图边缘造成影响,会在全图的预测上都产生不良影响。也可以说是非平衡的 padding 会导致网络学习到某些不自然的视觉模式。

2.Implications of Spatial Bias

作者通过给 SSD 检测网络输入全零图像并可视化 box predictor 的输出结果得到了下面这张图片的左半部分。从图像中可以看到在 45 X 80 的特征图中央部分背景类对应的 logits 值明显大于交通灯类别对应的 logits 值,并且两个类别的 logits 值都是定值。但在特征图的边缘部分这种理想的情况发生了变化,上边缘有一个横向的带状区域,这个区域上背景类的 logits 值明显高于特征图其它区域,而交通灯类的 logits 值变化则正好相反。这意味着在这个上边缘横向带状区域上,网络会天然降低交通灯类别的 logits 值。

看下图的右下部分可以更直观地发现这种异常状况:
这三副图中,中央的那一副图是原始视频的某一帧图像,网络对于这张图像中的交通灯区域对应的 anchor 判定为交通灯类的置信度为 7% ,左侧和右侧分别是将这幅图向上平移一些和向下平移一些的预测结果,分别是 44% 和 82% 。
同样一张图像,同一个目标,同样的像素构成,只是因为位置的不同预测结果就产生如此大的差异。只有 7% 交通灯置信度的那张图上,那个交通灯的位置就刚好在那条横向带状区域中。
MIND THE PAD – CNNS CAN DEVELOP BLIND SPOTS 论文理解 [author: linkrain]_第3张图片
下图展示了在两种不同的 padding 策略下处于图像中各个位置上的交通灯在同一个检测模型中被判定为是交通灯类别的置信度热力图。可以看到在使用 0 值 padding 的时候图像上部存在一条明显的盲带,位置处于盲带上的交通灯在模型中获得的置信度相较于其它区域低得非常明显。而这种现象在使用 mirror padding 之后得到了很大的改善,除了图像四周较窄的盲带仍然存在之外,靠近图像中心的那条盲带被消除了。这更进一步说明了不合适的 padding 是造成前文所述模型误差的主要原因。
MIND THE PAD – CNNS CAN DEVELOP BLIND SPOTS 论文理解 [author: linkrain]_第4张图片

3.Eliminating Uneven Application of Padding

下图展示了在下采样卷积层时使用 padding 会产生不对称的一种情形,通过可视化卷积核权重的平均值展示了这种不对称在卷积核的学习中所造成的结果,并与通过改变网 络输入尺寸消除了这种不对称后的可视化结果进行了对比。结果显示这种不对称的下采样卷积会造成对应层乃至其它层的卷积核在训练时普遍学习到有空间倾向性的特征。

那么如何确定一个网络输入尺寸使网络中的下采样卷积层避免出现卷积不对称的情形呢?作者在论文中给出了公式化的描述:
MIND THE PAD – CNNS CAN DEVELOP BLIND SPOTS 论文理解 [author: linkrain]_第5张图片
这篇文章先写到这里。
MIND THE PAD – CNNS CAN DEVELOP BLIND SPOTS 论文理解 [author: linkrain]_第6张图片

你可能感兴趣的:(计算机视觉,计算机视觉,卷积,深度学习)