解讀MaxPooling1D和GlobalMaxPooling1D的區(qū)別
MaxPooling1D和GlobalMaxPooling1D區(qū)別
import tensorflow as tf
from tensorflow import keras
input_shape = (2, 3, 4)
x = tf.random.normal(input_shape)
print(x)
y=keras.layers.GlobalMaxPool1D()(x)
print("*"*20)
print(y)
'''
"""Global average pooling operation for temporal data.
Examples:
>>> input_shape = (2, 3, 4)
>>> x = tf.random.normal(input_shape)
>>> y = tf.keras.layers.GlobalAveragePooling1D()(x)
>>> print(y.shape)
(2, 4)
Arguments:
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)`.
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).
Input shape:
- 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)`
Output shape:
2D tensor with shape `(batch_size, features)`.
"""
'''
print("--"*20)
input_shape = (2, 3, 4)
x = tf.random.normal(input_shape)
print(x)
y=keras.layers.MaxPool1D(pool_size=2,strides=1)(x) # strides 不指定 默認(rèn)等于 pool_size
print("*"*20)
print(y)
輸出如下圖
上圖GlobalMaxPool1D 相當(dāng)于給每一個樣本每列的最大值

而MaxPool1D就是普通的對每一個樣本進(jìn)行一個窗口(1D是一維列窗口)滑動取最大值。
tf.keras.layers.GlobalMaxPool1D()
與tf.keras.layers.Conv1D的輸入一樣,輸入一個三維數(shù)據(jù)(batch_size,feature_size,output_dimension)
x = tf.constant([[1., 2., 3.], [4., 5., 6.]]) ???????x = tf.reshape(x, [2, 3, 1]) max_pool_1d=tf.keras.layers.GlobalMaxPooling1D() max_pool_1d(x)
其中max_pool_1d(x)和tf.math.reduce_max(x,axis=-2,keepdims=False)作用相同
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python實(shí)現(xiàn)圖像的隨機(jī)增強(qiáng)變換
這篇文章主要為大家介紹了如何利用pythons制作一個小工具工具,可以實(shí)現(xiàn)圖像的隨機(jī)增強(qiáng)變換,可用于分類訓(xùn)練數(shù)據(jù)的增強(qiáng),有需要的可以參考下2024-11-11
Python count()函數(shù)實(shí)例詳解
count() 是Python的內(nèi)置函數(shù),可以「統(tǒng)計」字符串里指定「字符」或指定字符串出現(xiàn)的「次數(shù)」,這篇文章主要介紹了Python count()函數(shù)詳解,需要的朋友可以參考下2023-07-07
Python自動檢測requests所獲得html文檔的編碼
這篇文章主要為大家詳細(xì)介紹了如何通過Python自動檢測requests實(shí)現(xiàn)獲得html文檔的編碼,文中的示例代碼講解詳細(xì),感興趣的可以了解下2024-11-11
python 簡單搭建阻塞式單進(jìn)程,多進(jìn)程,多線程服務(wù)的實(shí)例
下面小編就為大家?guī)硪黄猵ython 簡單搭建阻塞式單進(jìn)程,多進(jìn)程,多線程服務(wù)的實(shí)例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-11-11

