View source on GitHub |
Max pooling operation for 1D temporal data.
tf.keras.layers.MaxPool1D( pool_size=2, strides=None, padding='valid', data_format='channels_last', **kwargs )
Downsamples the input representation by taking the maximum value over the window defined by pool_size
. The window is shifted by strides
. The resulting output when using "valid" padding option has a shape of: output_shape = (input_shape - pool_size + 1) / strides)
The resulting output shape when using the "same" padding option is: output_shape = input_shape / strides
For example, for strides=1 and padding="valid":
x = tf.constant([1., 2., 3., 4., 5.]) x = tf.reshape(x, [1, 5, 1]) max_pool_1d = tf.keras.layers.MaxPooling1D(pool_size=2, strides=1, padding='valid') max_pool_1d(x) <tf.Tensor: shape=(1, 4, 1), dtype=float32, numpy= array([[[2.], [3.], [4.], [5.]]], dtype=float32)>
For example, for strides=2 and padding="valid":
x = tf.constant([1., 2., 3., 4., 5.]) x = tf.reshape(x, [1, 5, 1]) max_pool_1d = tf.keras.layers.MaxPooling1D(pool_size=2, strides=2, padding='valid') max_pool_1d(x) <tf.Tensor: shape=(1, 2, 1), dtype=float32, numpy= array([[[2.], [4.]]], dtype=float32)>
For example, for strides=1 and padding="same":
x = tf.constant([1., 2., 3., 4., 5.]) x = tf.reshape(x, [1, 5, 1]) max_pool_1d = tf.keras.layers.MaxPooling1D(pool_size=2, strides=1, padding='same') max_pool_1d(x) <tf.Tensor: shape=(1, 5, 1), dtype=float32, numpy= array([[[2.], [3.], [4.], [5.], [5.]]], dtype=float32)>
Arguments | |
---|---|
pool_size | Integer, size of the max pooling window. |
strides | Integer, or None. Specifies how much the pooling window moves for each pooling step. If None, it will default to pool_size . |
padding | One of "valid" or "same" (case-insensitive). "valid" means no padding. "same" results in padding evenly to the left/right or up/down of the input such that output has the same height/width dimension as the input. |
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) . |
data_format='channels_last'
: 3D tensor with shape (batch_size, steps, features)
.data_format='channels_first'
: 3D tensor with shape (batch_size, features, steps)
.data_format='channels_last'
: 3D tensor with shape (batch_size, downsampled_steps, features)
.data_format='channels_first'
: 3D tensor with shape (batch_size, features, downsampled_steps)
.
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.4/api_docs/python/tf/keras/layers/MaxPool1D