当先锋百科网

首页 1 2 3 4 5 6 7

卷积层的运算其实是输入与核数组(卷积核)的互相关运算

实际上,卷积运算与互相关运算类似。为了得到卷积运算的输出,我们只需将核数组左右翻转并上下翻转,再与输入数组做互相关运算。
可见,卷积运算和互相关运算虽然类似,但如果它们使用相同的核数组,对于同一个输入,输出往往并不相同。

那么,你也许会好奇卷积层为何能使用互相关运算替代卷积运算。其实,在深度学习中核数组都是学出来的:
卷积层无论使用互相关运算或卷积运算都不影响模型预测时的输出。为了解释这一点,假设卷积层使用互相关运算学出下图中的核数组。
设其他条件不变,使用卷积运算学出的核数组即下图中的核数组按上下、左右翻转。
也就是说,下图中的输入与学出的已翻转的核数组再做卷积运算时,依然得到下图中的输出。
为了与大多数深度学习文献一致,如无特别说明,本书中提到的卷积运算均指互相关运算

输入 + 核数组 + 互相关运算 = 输出
输入+翻转后的核数组+卷积运算 = 输出

在这里插入图片描述
二维卷积层输出的二维数组可以看作是输入在空间维度(宽和高)上某一级的表征,也叫特征图(feature map)。
影响元素x的前向计算的所有可能输入区域(可能大于输入的实际尺寸)叫做xx的感受野(receptive field)。以上图为例,输入中阴影部分的四个元素是输出中阴影部分元素的感受野。我们将上图中形状为2×2的输出记为Y,并考虑一个更深的卷积神经网络:将Y与另一个形状为2×2的核数组做互相关运算,输出单个元素z。那么,z在Y上的感受野包括Y的全部四个元素,在输入上的感受野包括其中全部9个元素。

Y的X上的感受野在是四个元素;Z在Y上的感受野是四个元素,在X输入的感受野是九个元素。

可见,我们可以通过更深的卷积神经网络使特征图中单个元素的感受野变得更加广阔,从而捕捉输入上更大尺寸的特征。