一維時間數據的最大池化操作。
用法
tf.keras.layers.MaxPool1D(
pool_size=2, strides=None, padding='valid',
data_format='channels_last', **kwargs
)
參數
-
pool_size
整數,最大池化窗口的大小。 -
strides
整數或無。指定每個池化步驟的池化窗口移動量。如果沒有,它將默認為pool_size
。 -
padding
"valid"
或"same"
之一(不區分大小寫)。"valid"
表示沒有填充。"same"
導致在輸入的左/右或上/下均勻填充,以使輸出具有與輸入相同的高度/寬度尺寸。 -
data_format
一個字符串,是channels_last
(默認)或channels_first
之一。輸入中維度的排序。channels_last
對應於形狀為(batch, steps, features)
的輸入,而channels_first
對應於形狀為(batch, features, steps)
的輸入。
通過在大小為 pool_size
的空間窗口上取最大值來對輸入表示進行下采樣。窗口移動 strides
。使用 "valid"
填充選項時,生成的輸出具有以下形狀:output_shape = (input_shape - pool_size + 1) / strides)
使用 "same"
填充選項時產生的輸出形狀是:output_shape = input_shape / strides
例如,對於 strides=1
和 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)>
例如,對於 strides=2
和 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)>
例如,對於 strides=1
和 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)>
輸入形狀:
- 如果
data_format='channels_last'
:形狀為(batch_size, steps, features)
的 3D 張量。 - 如果
data_format='channels_first'
:形狀為(batch_size, features, steps)
的 3D 張量。
輸出形狀:
- 如果
data_format='channels_last'
:形狀為(batch_size, downsampled_steps, features)
的 3D 張量。 - 如果
data_format='channels_first'
:形狀為(batch_size, features, downsampled_steps)
的 3D 張量。
相關用法
- Python tf.keras.layers.MaxPool3D用法及代碼示例
- Python tf.keras.layers.MaxPool2D用法及代碼示例
- Python tf.keras.layers.Maximum用法及代碼示例
- Python tf.keras.layers.Masking用法及代碼示例
- Python tf.keras.layers.Multiply用法及代碼示例
- Python tf.keras.layers.MultiHeadAttention用法及代碼示例
- Python tf.keras.layers.Minimum用法及代碼示例
- Python tf.keras.layers.InputLayer用法及代碼示例
- Python tf.keras.layers.serialize用法及代碼示例
- Python tf.keras.layers.Dropout用法及代碼示例
- Python tf.keras.layers.maximum用法及代碼示例
- Python tf.keras.layers.LayerNormalization用法及代碼示例
- Python tf.keras.layers.Conv2D用法及代碼示例
- Python tf.keras.layers.RepeatVector用法及代碼示例
- Python tf.keras.layers.Activation用法及代碼示例
- Python tf.keras.layers.Conv1D用法及代碼示例
- Python tf.keras.layers.experimental.preprocessing.PreprocessingLayer.adapt用法及代碼示例
- Python tf.keras.layers.CategoryEncoding用法及代碼示例
- Python tf.keras.layers.subtract用法及代碼示例
- Python tf.keras.layers.experimental.preprocessing.HashedCrossing用法及代碼示例
注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.keras.layers.MaxPool1D。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。