全卷积网络接受域

时间:2018-08-06 09:02:11

标签: machine-learning computer-vision conv-neural-network convolution

关于感受野的计算有很多问题。 here在StackOverflow上有很好的解释。

但是,没有关于如何在完全卷积层中进行计算的博客或教程,即具有残差块,要素地图串联和上采样层(例如要素金字塔网络)的计算。

  1. 据我所知,剩余的块和跳过连接不会影响接收字段,可以跳过。来自here的答复。

  2. 上采样层如何处理?例如我们有一个900的有效接收场,接着是一个上采样层,接收场会减半吗?

  3. 与先前图层的特征图连接时,感受野是否发生变化?

谢谢!

1 个答案:

答案 0 :(得分:1)

要逐步回答您的问题,让我们首先从在此情况下接受域的定义开始:

  

单个感觉神经元的感受野是感觉空间的特定区域(例如,身体表面或视野),刺激会在该区域改变该神经元的放电。

采用from Wikipedia。这意味着我们正在寻找您输入中所有会影响当前输出的像素。从逻辑上讲,如果执行卷积运算(例如,使用单个3x3滤镜内核),则单个像素的接受场就是输入区域中对应于该特定步骤进行卷积的3x3图像区域。

在视觉上,在此图形中,下面的较暗区域标记了输出中特定像素的接受区域: Visual description of recepitve field

现在,要回答您的第一个问题:剩余的障碍物当然仍然是感受域!让我们将剩余块表示为:

  • F(X):残余块
  • g_i(X):单个卷积块

然后,我们可以将残差块表示为F(X) = g_3(g_2(g_1(X))) + X,因此在这种情况下,我们将堆叠3个卷积(作为示例)。当然,该卷积的每个单层仍会改变接收场,因为它与开头所述的相同。 简单地再次添加X不会改变接受域。但是,仅此一项添加并不会构成残余障碍。

类似地,跳过连接不会以如下方式影响接收场:跳过层几乎总是会产生不同的(大部分是较小的)接收场。但是,正如您在链接的答案中所解释的那样,如果跳过连接的接受域较大,则会有所作为,因为接受域是路径中不同区域的最大值(更具体地讲,并集)通过流程图。

对于有关上采样层的问题,您可以通过询问以下问题自己猜出答案: 输入图像的区域是否会受到图像中任何地方的上采样影响?

答案应该是“显然不是”。从本质上讲,尽管现在您具有更高的分辨率,但您仍在输入区域中看到相同的区域,并且实际上类似的像素可能会看到相同的区域。回到上面的GIF:如果绿色区域的像素数是4倍,则每个像素仍然必须查看蓝色区域中大小不变的特定输入区域。因此,不,升级不会对此产生影响。

对于最后一个问题:这与第一个问题非常相关。实际上,感受野会查看影响输出的所有像素,因此取决于您要连接的要素图,它可能会改变它。

同样,最终的接受域是要连接的要素图的接受域的并集。如果它们相互包含(A subset of BB subset of A,其中AB是要连接的要素图),则接收字段不会改变。否则,接收字段将为A union B