gpt4 book ai didi

machine-learning - strides = 2 的 tf.nn.conv2d 和 2x2 池化的 tf.nn.max_pool 之间有什么区别?

转载 作者:行者123 更新时间:2023-11-30 09:34:54 26 4
gpt4 key购买 nike

如上所述,两者都

tf.nn.conv2d with strides = 2

tf.nn.max_pool with 2x2 pooling

可以将输入的大小减少一半,我知道输出可能会有所不同,但我不知道这是否会影响最终的训练结果,对此有任何线索,谢谢。

最佳答案

在您的两个示例中,假设我们有一个应用了步长[2,2][height, width]内核。这意味着我们将内核应用于 2-D 输入上大小为 [height, width] 的 2-D 窗口以获得输出值,然后将窗口向上或向下滑动 2获取下一个输出值。

假设 padding='SAME'

,在这两种情况下,最终输出都会比输入少 4 倍(每个维度都少 2 倍)

区别在于如何计算每个窗口的输出值:

转换2d

  • 输出是输入值乘以[height, width]内核中每个单元的权重的线性组合
  • 这些权重成为模型中的可训练参数

最大池

  • 输出只是在输入值的[height, width]窗口中选择最大输入值
  • 此操作没有引入任何权重和可训练参数

关于machine-learning - strides = 2 的 tf.nn.conv2d 和 2x2 池化的 tf.nn.max_pool 之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45594820/

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