是因為目前計算機算力不夠嗎?


1) 池化層可以減少feature map的尺寸, 進而減少計算量. 當然stride大於1的卷積層也可以減少feature map的尺寸.

2) 池化層可以增加感受野. 不過卷積核尺寸大於1的卷積層同樣也可以增加感受野.

3) 池化層可以帶來特徵的平移, 旋轉等不變性.

4) (最大值等)池化層一般是非線性操作, 可以增強網路的表達能力. 激活層一般也是非線性的.

從1), 2), 4) 來看, 池化層在CNN中並不是必須的. 至於 3) 有沒有其他層也可以實現, 並替代池化層, 則不好說.


1.提特徵

2.提高模型的非線性

3.減少計算量(特徵圖變小了)


我覺得,使用池化層的原因主要是:1、減少大量的計算量。2、引入空間過濾器的層級結構,從而讓連續卷積層的觀察窗口變大,這樣可以更加充分地獲得信息。


池化層一方面是為了減少特徵圖的解析度,減少大量的計算量。另一方面平均池化和最大池化也能提取到一定的特徵,這跟傳統圖像處理有一定關係。不過現在大部分使用stride=2的卷積來減少解析度,只有最後到全連接層前才使用一層全局池化


max pooling擴大感受野,增加非線性提高模型表達能力,但同時會導致特徵丟失平移不變性


池化層進行的是下採樣操作。主要是進行特徵提取工作,使數據特徵更加明顯。同時也減少了計算量。


1.池化可以降低參數量。

2.池化(max-pooling、avg-pooling)可以一定程度做到旋轉不變、仿射不變。

3.有池化操作,確實效果不錯。

4.池化不是必須的,用stride替代pooling也是一個趨勢。


實際上池化層也能加大感受域,有一定的仿射不變性。


一方面是池化層可以降低參數量,我覺得更重要的是可以獲得高層次特徵。


減少計算量,降低維度,提取更多有用的特徵


為了增加感受野,不然基本維持不變


空域上稀疏

識別,分類等任務確實很有用

但你在生成模型引入,模型立馬崩掉

還有relu的的作用也一樣,引入稀疏,畢竟又不是生成得將各種信息都轉換

去掉與識別無關的噪音,節省算力,並允許網路冗餘更多識別相關的特徵


對特徵圖降採樣,提升計算速度


推薦閱讀:
相关文章