我可以简单地用 tf.layer.max_pooling 替换 tf.nn.conv2d 层吗?
Can I simply replace a tf.nn.conv2d layer with a tf.layer.max_pooling?
我想知道,与 pooling 相比,stride 好多少。
我当前的代码如下所示
w = tf.get_variable('w', [k_h, k_w, output_shape[-1], input_.get_shape()[-1]],
initializer=tf.random_normal_initializer(stddev=stddev))
deconv = tf.nn.conv2d_transpose(input_, w, output_shape=output_shape, strides=[1, d_h, d_w, 1])
下面的代码是否与上面的代码大致相同?
tf.layers.max_pooling2d(input_, pooling=2, strides=[1, d_h, d_w, 1], padding='same')
- 两者不同
tf.nn.conv2d_transpose
用于上采样
tf.layers.max_pooling2d
用于下采样
tf.nn.conv2d_transpose
获取低维图像并将其缩放为高维图像
tf.layers.max_pooling2d
获取更高维度的图像并将其缩小为更低维度的图像
- 您不能用
tf.layer.max_pooling
替换 tf.nn.conv2d
层,因为它们的 bot 完全用于相反的目的
我想知道,与 pooling 相比,stride 好多少。
我当前的代码如下所示
w = tf.get_variable('w', [k_h, k_w, output_shape[-1], input_.get_shape()[-1]],
initializer=tf.random_normal_initializer(stddev=stddev))
deconv = tf.nn.conv2d_transpose(input_, w, output_shape=output_shape, strides=[1, d_h, d_w, 1])
下面的代码是否与上面的代码大致相同?
tf.layers.max_pooling2d(input_, pooling=2, strides=[1, d_h, d_w, 1], padding='same')
- 两者不同
tf.nn.conv2d_transpose
用于上采样tf.layers.max_pooling2d
用于下采样tf.nn.conv2d_transpose
获取低维图像并将其缩放为高维图像tf.layers.max_pooling2d
获取更高维度的图像并将其缩小为更低维度的图像- 您不能用
tf.layer.max_pooling
替换tf.nn.conv2d
层,因为它们的 bot 完全用于相反的目的