关于R-FCN的理解难点之平移不变性和平移可变性

理解难点1:平移不变性和平移可变性
  作者在论文中提到了两个概念,平移不变性(translation invariance)和平移可变性(translation variance)。平移不变性比较好理解,在用基础的分类结构比如ResNet、Inception给一只猫分类时,无论猫怎么扭曲、平移,最终识别出来的都是猫,输入怎么变形输出都不变这就是平移不变性,网络的层次越深这个特性会越明显。平移可变性则是针对目标检测的,一只猫从图片左侧移到了右侧,检测出的猫的坐标会发生变化就称为平移可变性。当卷积网络变深后最后一层卷积输出的feature map变小,物体在输入上的小偏移,经过N多层pooling后在最后的小feature map上会感知不到,这就是为什么原文会说网络变深平移可变性变差。
  再来看个Faster R-CNN + ResNet-101结构的例子。如果在Faster R-CNN中没有ROI层,直接对整个feature map进行分类和位置的回归,由于ResNet的结构较深,平移可变性较差,检测出来的坐标会极度不准确。如果在ResNet中间(图1 conv4与conv5间)加个ROI层结果就不一样了,ROI层提取出的proposal中,有的对应前景label,有的对应背景label,proposal位置的偏移就有可能造成label分类(前景和背景分类)的不同。偏移后原来的前景很有可能变成了背景,原来的背景很有可能变成了前景,换句话说分类loss对proposal的位置是敏感的,这种情况ROI层给深层网络带来了平移可变性。如果把ROI加到ResNet的最后一层(图1 conv5后)结果又是怎样呢?conv5的第一个卷积stride是2,造成conv5输出的feature map更小,这时proposal的一个小偏移在conv5输出上很有可能都感知不到,即proposal对应的label没有改变,所以conv5后虽然有ROI也对平移可变性没有什么帮助,识别出来的位置准确度会很差。

关于R-FCN的理解难点之平移不变性和平移可变性_第1张图片
  论文中作者给了测试的数据:ROI放在ResNet-101的conv5后,mAP是68.9%;ROI放到conv5前(就是标准的Faster R-CNN结构)的mAP是76.4%,差距是巨大的,这能证明平移可变性对目标检测的重要性。

你可能感兴趣的:(论文理解)