【发布时间】:2018-10-22 20:27:38
【问题描述】:
我正在尝试了解tf.layers.conv2d 执行的转换。
TensorFlow 网站的 mnist 教程代码包含卷积层:
# Computes 64 features using a 5x5 filter.
# Padding is added to preserve width and height.
# Input Tensor Shape: [batch_size, 14, 14, 32]
# Output Tensor Shape: [batch_size, 14, 14, 64]
conv2 = tf.layers.conv2d(
inputs=pool1,
filters=64,
kernel_size=[5, 5],
padding="same",
activation=tf.nn.relu)
但是,我的期望是 32 个输入图像将乘以过滤器的数量,因为每个过滤器都应用于每个图像,从而得到 [batch_sz, 14, 14, 2048] 的输出张量。显然这是错误的,但我不知道为什么。转型如何运作? API 文档没有告诉我它是如何工作的。如果输入张量是[batch_size, 14, 14, 48],输出会是什么?
【问题讨论】:
标签: python tensorflow conv-neural-network