繁体   English   中英

汇聚层与卷积层中使用填充的对比

[英]Pooling Layer vs. Using Padding in Convolutional Layers

我的理解是,当我们卷积时我们使用填充,因为使用滤波器进行卷积会通过缩小输出来减小输出的尺寸,以及从输入矩阵的边缘/角落丢失信息。 但是,我们还在多个Conv图层之后使用池化层,以便对我们的要素图进行下采样。 这看起来有点矛盾吗? 我们使用填充因为我们不想减小空间维度,但我们稍后使用池来减少空间维度。 有人能为这两个人提供一些直觉吗?

不失一般性,假设我们正在处理图像作为输入。 填充背后的原因不仅是为了防止尺寸缩小,还要确保输入角和边缘上的输入像素在影响输出时不会“不利”。 在没有填充的情况下,图像角上的像素仅与一个滤镜区域重叠,而图像中间的像素与许多滤镜区域重叠。 因此,中间的像素影响下一层中的更多单元,因此对输出具有更大的影响。 其次,您确实希望缩小输入的维度(请记住,深度学习完全是关于压缩,即找到输入的低维表示,以解开数据中的变化因素)。 由没有填充的卷积引起的收缩并不理想,如果你有一个非常深的网络,你很快会得到非常低的维度表示,丢失数据中的大部分相关信息。 相反,您希望以智能方式缩小尺寸,这是通过Pooling实现的。 特别是,Max Pooling已被发现运作良好。 这实际上是一个实证结果,即没有太多理论来解释为什么会这样。 您可以想象,通过对附近的激活采取最大值,您仍然保留有关此区域中特定要素的存在的信息,同时丢失有关其确切位置的信息。 这可能是好事也可能是坏事。 很好,因为它会为你购买翻译不变性而且不好,因为确切的位置可能与你的问题有关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM