【问题标题】:About max-pooling?关于最大池化?
【发布时间】:2017-08-29 06:41:21
【问题描述】:

最大池在视觉中很有用,原因有两个:

通过消除非最大值,它减少了计算上限 层。

它提供了一种翻译不变性的形式。想象级联一个 带有卷积层的最大池化层。有8个方向 其中可以将输入图像平移一个像素。如果 最大池化是在 2x2 区域上完成的,这 8 种可能中的 3 种 配置将产生完全相同的输出 卷积层。对于 3x3 窗口上的最大池化,这会跳转到 5/8。

由于它为位置提供了额外的鲁棒性,因此最大池化是一种 降低中间体维度的“智能”方式 表示。

我不明白,8 directions 是什么意思?还有什么

"如果最大池化是在 2x2 区域上完成的,这 8 个中的 3 个可能 配置将产生完全相同的输出 卷积层。对于 3x3 窗口上的最大池化,这会跳转到 5/8。”

是什么意思?

【问题讨论】:

    标签: image-processing deep-learning conv-neural-network max-pooling


    【解决方案1】:

    有 8 个方向可以将输入图像平移单个像素。

    他们正在考虑 2 个水平、2 个垂直和 4 个对角线 1 像素移位。总共有 8 个。

    如果在 2x2 区域上进行最大池化,则这 8 种可能配置中的 3 种将在卷积层产生完全相同的输出。对于 3x3 窗口上的最大池化,这会跳转到 5/8。

    假设我们在图像的 2x2 区域中取最大值。图像是预卷积的,尽管对于本解释的目的并不重要。

    无论最大值在 2x2 区域中的确切位置,都会有 3 次可能的图像 1 像素平移,导致最大值保留在该特定 2x2 区域中。当然,可能会从邻近地区带来更大的价值,但这不是重点。关键是你得到一些翻译不变性。

    对于 3x3 区域,它变得更加复杂,因为在该区域内保持最大值的 1 像素平移的数量取决于最大值所在区域的确切位置。他们提到的 5 个翻译对应于 3x3 像素块中边缘中间的位置。角落位置将提供 3 个翻译,而中心位置将提供全部 8 个。

    【讨论】:

    • 看不懂pooling和translation invariance的关系?你能解释更多吗? “将有 3 种可能的 1 像素转换图像,导致该特定 2x2 区域中剩余的最大值”,哪 3 种可能的 1 像素转换? 1 像素平移是什么意思?
    • @Gauss 假设 2x2 区域中的最大值位于坐标 (1, 1)。然后, (-1, -1) 的图像平移会将特定值移动到位置 (0, 0),该位置仍在 2x2 区域内。将最大值留在 2x2 区域内的另外两个翻译是 (0, -1) 和 (-1, 0)。
    • (-1,-1),(-1,0),(0,-1) 是什么意思?四个像素(0,0),(0,1),(1,0),(1,1)合并成(1,1)——2*2区域的最大虚空?
    • @Gauss 这些是平移向量。 new_position = old_position + translation_vector。在我的例子中(0, 0) = (1, 1) + (-1, -1).
    • 我还是看不懂。四个像素合并为1个像素,你的意思是“保持区域内最大值的1个像素翻译”,翻译后没有之前的区域.对于 3*3 区域,我无法理解“他们提到的 5 个翻译对应于 3x3 像素块中边缘中间的位置。角落位置将提供 3 个翻译,而中心位置将提供所有 8 个翻译。”可能我不明白你所说的 1 像素翻译是什么意思。
    猜你喜欢
    • 1970-01-01
    • 2018-04-24
    • 2018-02-22
    • 1970-01-01
    • 2017-06-16
    • 1970-01-01
    • 2022-01-05
    • 2021-07-11
    • 2018-03-16
    相关资源
    最近更新 更多