# tf.keras.layers.GlobalMaxPooling1D

<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_max_pooling1d.py#L25-L83) |

Global max pooling operation for 1D 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.GlobalMaxPool1D`](https://www.tensorflow.org/api_docs/python/tf/keras/layers/GlobalMaxPooling1D)
**Compat aliases for migration**

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

\`tf.compat.v1.keras.layers.GlobalMaxPool1D\`, \`tf.compat.v1.keras.layers.GlobalMaxPooling1D\`

<br />

    tf.keras.layers.GlobalMaxPooling1D(
        data_format='channels_last', keepdims=False, **kwargs
    )

Downsamples the input representation by taking the maximum value over
the time dimension.

#### For example:

    x = tf.constant([[1., 2., 3.], [4., 5., 6.], [7., 8., 9.]])
    x = tf.reshape(x, [3, 3, 1])
    x
    <tf.Tensor: shape=(3, 3, 1), dtype=float32, numpy=
    array([[[1.], [2.], [3.]],
           [[4.], [5.], [6.]],
           [[7.], [8.], [9.]]], dtype=float32)>
    max_pool_1d = tf.keras.layers.GlobalMaxPooling1D()
    max_pool_1d(x)
    <tf.Tensor: shape=(3, 1), dtype=float32, numpy=
    array([[3.],
           [6.],
           [9.], dtype=float32)>

<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_max`](https://www.tensorflow.org/versions/r2.13/api_docs/python/tf/math/reduce_max) or `np.max`. |

<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 />