gpt4 book ai didi

python - tensorflow的tf.nn.max_pool中 'SAME'和 'VALID' padding有什么区别?

转载 作者:IT老高 更新时间:2023-10-28 12:11:08 29 4
gpt4 key购买 nike

tensorflowtf.nn.max_pool中的“SAME”和“VALID”填充有什么区别?

在我看来,“VALID”意味着当我们进行最大池时,边缘之外不会有零填充。

根据A guide to convolution arithmetic for deep learning ,它表示池运算符中不会有填充,即只使用 tensorflow 的“VALID”。但是 tensorflow 中最大池的“SAME”填充是什么?

最佳答案

如果你喜欢 ascii 艺术:

  • "VALID" = 没有填充:

       inputs:         1  2  3  4  5  6  7  8  9  10 11 (12 13)
    |________________| dropped
    |_________________|
  • "SAME" = 零填充:

                   pad|                                      |pad
    inputs: 0 |1 2 3 4 5 6 7 8 9 10 11 12 13|0 0
    |________________|
    |_________________|
    |________________|

在这个例子中:

  • 输入宽度 = 13
  • 过滤器宽度 = 6
  • 步幅 = 5

注意事项:

  • "VALID" 只删除最右边的列(或最底部的行)。
  • "SAME" 尝试左右均匀填充,但是如果要添加的列数是奇数,它会将额外的列添加到右侧,如本例中的情况(同样的逻辑也适用于垂直方向:底部可能会多出一行零)。

编辑:

关于名字:

  • 使用 "SAME" 填充,如果您使用 1 的步幅,图层的输出将具有与其输入相同的空间维度。
  • 使用 "VALID" 填充,没有“虚构”的填充输入。该层仅使用有效输入数据。

关于python - tensorflow的tf.nn.max_pool中 'SAME'和 'VALID' padding有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37674306/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com