雪花台湾

卷積神經網路(cnn)中為什麼要有池化層?

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


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的的作用也一樣,引入稀疏,畢竟又不是生成得將各種信息都轉換

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


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


推薦閱讀:
相关文章