# tf.keras.layers.GlobalAveragePooling1D

<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/keras-team/keras/tree/v2.13.1/keras/layers/pooling/global_average_pooling1d.py#L27-L98) |

Global average pooling operation for temporal data.

Inherits From: [`Layer`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/keras/layers/Layer), [`Module`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/Module)

#### View aliases


**Main aliases**

[`tf.keras.layers.GlobalAvgPool1D`](https://www.tensorflow.org/api_docs/python/tf/keras/layers/GlobalAveragePooling1D)
**Compat aliases for migration**

See
[Migration guide](https://www.tensorflow.org/guide/migrate) for
more details.

\`tf.compat.v1.keras.layers.GlobalAveragePooling1D\`, \`tf.compat.v1.keras.layers.GlobalAvgPool1D\`

<br />

    tf.keras.layers.GlobalAveragePooling1D(
        data_format='channels_last', **kwargs
    )

#### Examples:

    input_shape = (2, 3, 4)
    x = tf.random.normal(input_shape)
    y = tf.keras.layers.GlobalAveragePooling1D()(x)
    print(y.shape)
    (2, 4)

<br />

<br />

<br />

| ## Args ||
|---|---|
| `data_format` | A string, one of `channels_last` (default) or `channels_first`. The ordering of the dimensions in the inputs. `channels_last` corresponds to inputs with shape `(batch, steps, features)` while `channels_first` corresponds to inputs with shape `(batch, features, steps)`. |
| `keepdims` | A boolean, whether to keep the temporal dimension or not. If `keepdims` is `False` (default), the rank of the tensor is reduced for spatial dimensions. If `keepdims` is `True`, the temporal dimension are retained with length 1. The behavior is the same as for [`tf.reduce_mean`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/math/reduce_mean) or `np.mean`. |

<br />

<br />

<br />

<br />

| ## Call arguments ||
|---|---|
| `inputs` | A 3D tensor. |
| `mask` | Binary tensor of shape `(batch_size, steps)` indicating whether a given step should be masked (excluded from the average). |

<br />

<br />

<br />

| ## Input shape ||
|---|---|
| <br /> - If `data_format='channels_last'`: 3D tensor with shape: `(batch_size, steps, features)` - If `data_format='channels_first'`: 3D tensor with shape: `(batch_size, features, steps)` ||

<br />

<br />

<br />

| ## Output shape ||
|---|---|
| <br /> - If `keepdims`=False: 2D tensor with shape `(batch_size, features)`. - If `keepdims`=True: - If `data_format='channels_last'`: 3D tensor with shape `(batch_size, 1, features)` - If `data_format='channels_first'`: 3D tensor with shape `(batch_size, features, 1)` ||

<br />