GlobalMaxPooling3D
classkeras.layers.GlobalMaxPooling3D(data_format=None, keepdims=False, **kwargs)
三维数据的全局最大池化操作.
参数:
data_format: 字符串,可以是 "channels_last"
或 "channels_first"
.
输入中维度的顺序."channels_last"
对应输入形状为
(batch, spatial_dim1, spatial_dim2, spatial_dim3, channels)
而 "channels_first"
对应输入形状为
(batch, channels, spatial_dim1, spatial_dim2, spatial_dim3)
.
它默认为在 ~/.keras/keras.json
中的 image_data_format
值.如果你从未设置过它,那么它将是 "channels_last"
.
keepdims: 一个布尔值,是否保留时间维度.
如果 keepdims
为 False
(默认),张量的秩会因空间维度而减少.如果 keepdims
为 True
,空间维度将以长度 1 保留.
其行为与 tf.reduce_mean
或 np.mean
相同.
输入形状:
data_format='channels_last'
:
5D 张量,形状为:
(batch_size, spatial_dim1, spatial_dim2, spatial_dim3, channels)
data_format='channels_first'
:
5D 张量,形状为:
(batch_size, channels, spatial_dim1, spatial_dim2, spatial_dim3)
输出形状:
keepdims=False
:
2D 张量,形状为 (batch_size, channels)
.keepdims=True
:
- 如果 data_format="channels_last"
:
5D 张量,形状为 (batch_size, 1, 1, 1, channels)
- 如果 data_format="channels_first"
:
5D 张量,形状为 (batch_size, channels, 1, 1, 1)
示例:
>>> x = np.random.rand(2, 4, 5, 4, 3)
>>> y = keras.layers.GlobalMaxPooling3D()(x)
>>> y.shape
(2, 3)