Keras 3 API 文档 / 层 API / 池化层 / GlobalMaxPooling3D 层

GlobalMaxPooling3D 层

[source]

GlobalMaxPooling3D class

keras.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: 一个布尔值,是否保留时间维度. 如果 keepdimsFalse(默认),张量的秩会因空间维度而减少.如果 keepdimsTrue,空间维度将以长度 1 保留. 其行为与 tf.reduce_meannp.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)