CNN 中的卷积层是否将前一层输出视为通道?

数据挖掘 机器学习 深度学习 卷积神经网络 卷积
2021-09-23 04:08:44

假设您有一个最大池化层,可提供 10 个下采样特征图。您是否堆叠这些特征图,将它们视为通道并将深度为 10 的“单个图像”与深度为 10 的 3d 内核卷积?这就是我一般的想法。那是对的吗?

这个可视化让我很困惑: http: //scs.ryerson.ca/~aharley/vis/conv/flat.html

在上述可视化中的第二个卷积层上,大多数特征图只连接到之前层图的 3 或 4 个。谁能帮助我更好地理解这一点?

相关问题:如果我们的输入是彩色图像,我们的第一个卷积核将是 3D。这意味着我们为每个颜色通道学习不同的权重(我假设我们没有学习在每个通道上重复的单个 2D 内核,对吗)?

1个回答

假设您有一个最大池化层,可提供 10 个下采样特征图。您是否堆叠这些特征图,将它们视为通道并将深度为 10 的“单个图像”与深度为 10 的 3d 内核卷积?这就是我一般的想法。那是对的吗?

是的。CNN 中的常规约定是每个内核始终与输入具有相同的深度,因此您也可以将其视为与输入通道相关联的 2D 内核的“堆栈”,并求和以形成一个输出通道 - 因为根据该公约ñ一世n_CH一个nnels=ñķernel_depH这在数学上是相同的。表示为 3D 卷积允许更简单的符号和代码。

在上述可视化中的第二个卷积层上,大多数特征图只连接到之前层图的 3 或 4 个。谁能帮助我更好地理解这一点?

该图在这方面是非标准的,尽管它似乎正常显示了池化和全连接层。这可能是图表中的一个错误,或者该特定 CNN 的一些非常规的东西。

如果我们的输入是彩色图像,我们的第一个卷积核将是 3D。这意味着我们为每个颜色通道学习不同的权重(我假设我们没有学习在每个通道上重复的单个 2D 内核,对吗)?

正确的。您可以在AlexNet 的可视化过滤器中看到这一点(请注意,出于计算原因,AlexNet 将其一半过滤器专门用于灰度工作,并且还有其他我们现在不使用的巧妙优化,因为可用的 GPU 功率足够高不需要它们)。大多数实现还将灰度图像视为 1 通道 3D 形状以保持一致性。