CNN中“内核”和“过滤器”的区别

机器算法验证 神经网络 术语 深度学习 卷积神经网络
2022-01-16 04:55:50

在卷积神经网络的上下文中,术语“内核”和“过滤器”有什么区别?

4个回答

在卷积神经网络的上下文中,内核 = 过滤器 = 特征检测器。


这是斯坦福深度学习教程中的一个很好的插图( Denny Britz也很好地解释了)。

在此处输入图像描述

过滤器为黄色滑动窗口,其值为:

[101010101]

我们如何使用术语“内核”来表示 2D 权重数组,而使用术语“过滤器”来表示堆叠在一起的多个内核的 3D 结构?过滤器的维度是k×k×C(假设方形内核)。每一个C组成过滤器的内核将与其中一个卷积C输入通道(输入尺寸Hin×Hin×C,例如一个32×32RGB 图像)。使用不同的词来描述 2D 权重数组并使用不同的词来描述权重的 3D 结构是有意义的,因为乘法发生在 2D 数组之间,然后将结果相加以计算 3D 操作。

目前,该领域的命名法存在问题。有许多描述同一事物的术语,甚至可以互换用于不同概念的术语!以用于描述卷积层输出的术语为例:特征图、通道、激活、张量、平面等……

基于维基百科,“在图像处理中,内核是一个小矩阵”。

根据维基百科,“矩阵是按行和列排列的矩形阵列”。

如果一个内核是一个矩形数组,那么它不可能是权重的 3D 结构,通常是k1×k2×C方面。

好吧,我不能说这是最好的术语,但它比只互换使用术语“内核”和“过滤器”要好。此外,我们确实需要一个词来描述形成过滤器的不同二维数组的概念。

过滤器由内核组成。这意味着,在 2D 卷积神经网络中,滤波器是 3D。检查来自 CS231n Convolutional Neural Networks for Visual Recognition 的 gif

在此处输入图像描述

此 gif 的第二列中的这三个 3x3内核构成了一个过滤器就像在第三列中一样。过滤器的数量总是等于下一层的特征图的数量。而每个过滤器中的内核数量将始终等于该层中特征图的数量。

在此特定上下文中,特征图与过滤器或“内核”相同。过滤器的权重决定了检测到哪些特定特征。

例如,弗兰克提供了一个很棒的视觉效果。请注意,他的过滤器/特征检测器沿对角线元素具有 x1,沿所有其他元素具有 x0。因此,该内核加权将检测图像中沿图像对角线值为 1 的像素。

观察得到的卷积特征在图像沿 3x3 过滤器的对角线值具有“1”的地方显示值为 4(因此在图像的特定 3x3 部分检测过滤器),而在该过滤器没有强烈匹配的图像。