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

GlobalAveragePooling1D 层

[源代码]

GlobalAveragePooling1D

keras.layers.GlobalAveragePooling1D(data_format=None, keepdims=False, **kwargs)

对时序数据进行全局平均池化操作。

参数

  • data_format: 字符串,可以是 "channels_last""channels_first"。输入中维度的顺序。"channels_last" 对应于形状为 (batch, steps, features) 的输入,而 "channels_first" 对应于形状为 (batch, features, steps) 的输入。它默认为 Keras 配置文件 ~/.keras/keras.json 中的 image_data_format 值。如果你从未设置过,则默认为 "channels_last"
  • keepdims: 布尔值,是否保留时间维度。如果 keepdimsFalse(默认),则张量的空间维度等级会降低。如果 keepdimsTrue,则时间维度会保留长度为 1。其行为与 tf.reduce_meannp.mean 相同。

调用参数

  • inputs: 3D 张量。
  • mask: 形状为 (batch_size, steps) 的二进制张量,指示是否应屏蔽(排除在平均计算之外)给定步骤。

输入形状

  • 如果 data_format='channels_last': 形状为 (batch_size, steps, features) 的 3D 张量。
  • 如果 data_format='channels_first': 形状为 (batch_size, features, steps) 的 3D 张量。

输出形状

  • 如果 keepdims=False: 形状为 (batch_size, features) 的 2D 张量。
  • 如果 keepdims=True: - 如果 data_format="channels_last": 形状为 (batch_size, 1, features) 的 3D 张量 - 如果 data_format="channels_first": 形状为 (batch_size, features, 1) 的 3D 张量

示例

>>> x = np.random.rand(2, 3, 4)
>>> y = keras.layers.GlobalAveragePooling1D()(x)
>>> y.shape
(2, 4)