我有以下代码
from tensorflow import kerasfrom keras import backend as Kpool_size = (2,2,2)strides = (2,2,2)yt = K.zeros(shape=(10,10,10))result = keras.backend.pool3d(yt, pool_size, strides, pool_mode="avg")
当我尝试运行代码时,它显示
.. InvalidArgumentError: tensor_in必须是5维的 [Op:AvgPool3D] 名称: AvgPool3D/
似乎不喜欢yt的维度。但我想对3x3x3的3D图像进行最大池化。其他维度应该是什么?
回答:
- 批次大小
- 通道
就像Keras中的每个卷积类操作一样,这些维度是必需的。
- 使用”channels_last”(默认):
(batch, size1, size2, size3, channels)
- 使用”channels_first”:
(batch, channels, size1, size2, size3)
所以:
yt = K.zeros(shape=(1,10,10,10,1))