卷积核
参考了百度百科、data science、知乎(量子态)。
卷积使用“内核(kernel)”从输入图像中提取某些“特征”。卷积核是一个矩阵,可在图像上滑动并与输入相乘,从而以某种所需的方式增强输出。以下图为例进行说明。
上图所用的卷积核用于锐化图像。但是这个内核有什么特别之处呢?考虑以下示例中所示的两个输入图像排列。对于第一个图像,中心值为
3 × 5 + 2 × ( − 1 ) + 2 × ( − 1 ) + 2 × ( − 1 ) + 2 × ( − 1 ) = 7 3 \times 5 + 2 \times( -1) + 2 \times(-1) + 2 \times (-1) + 2 \times( -1) =7 3×5+2×(−1)+2×(−1)+2×(−1)+2×(−1)=7
值3增加到7。对于第二个图像,输出是
1 × 5 + 2 × ( − 1 ) + 2 × ( − 1 ) + 2 × ( − 1 ) + 2 × ( − 1 ) = − 3 1 \times 5 + 2 \times (-1) + 2 \times (-1)+ 2 \times (-1) + 2 \times (-1) = -3 1×5+2×(−1)+2×(−1)+2×(−1)+2×(−1)=−3
值1减少到-3。显然,3和1之间的对比度增加到7和-3,这样图片会变得更加清晰。
现在可以解释卷积操作的用处了:用输出图像中更亮的像素表示原始图像中存在的边缘。回想一下MNIST手写数字分类问题。在MNIST上训练的CNN可以找到某个特定的数字。比如发现数字1,可以通过使用边缘检测发现图像上两个突出的垂直边缘。通常,卷积有助于我们找到特定的局部图像特征(如边缘),用在后面的网络中。