深度学习之卷积神经网络(7)池化层
深度學(xué)習(xí)之卷積神經(jīng)網(wǎng)絡(luò)(7)池化層
在卷積層中,可以通過調(diào)節(jié)步長參數(shù)s實(shí)現(xiàn)特征圖的高寬成倍縮小,從而降低了網(wǎng)絡(luò)的參數(shù)量。實(shí)際上,處理通過設(shè)置步長,還有一種專門的網(wǎng)絡(luò)層可以實(shí)現(xiàn)尺寸縮減功能,它就是這里要介紹的池化層(Pooling Layer)。
?池化層同樣基于局部相關(guān)性的思想,通過從局部相關(guān)的一組元素中進(jìn)行采樣或信息聚合,從而得到新的元素值。特別地,最大池化層(Max Pooling)從局部相關(guān)元素集中選取最大的一個(gè)元素值,平均池化層(Average Pooling)從局部相關(guān)元素集中計(jì)算平均值并返回。以5×55×55×5輸入X\boldsymbol XX的最大池化層為例,考慮池化感受野窗口大小為k=2k=2k=2,步長s=1s=1s=1的情況,如下圖所示。
綠色方框代表第一個(gè)感受野的位置,感受野元素集合為:
{1,?1,?1,?2}\{1,-1,-1,-2\}{1,?1,?1,?2}
在最大池化采樣的方法下,通過
x′=max?({1,?1,?1,?2})=1x'=\text{max}?(\{1,-1,-1,-2\})=1x′=max?({1,?1,?1,?2})=1
計(jì)算出當(dāng)前位置的輸出值為1,并寫入對(duì)應(yīng)位置。
?若采用的是平均池化操作,則此時(shí)的輸出值應(yīng)為
x′=avg({1,?1,?1,?2})=?0.75x'=\text{avg}(\{1,-1,-1,-2\})=-0.75x′=avg({1,?1,?1,?2})=?0.75
?計(jì)算完當(dāng)前位置的感受野后,與卷積層的計(jì)算步驟類似,將感受野按著步長向右移動(dòng)若干單位,此時(shí)的輸出
x′=max?(?1,0,?2,2)=2x'=\text{max}?(-1,0,-2,2)=2x′=max?(?1,0,?2,2)=2
?同樣的方法,逐漸移動(dòng)感受野窗口至最右邊,計(jì)算輸出x′=max?(2,0,3,1)=1x'=\text{max}?(2,0,3,1)=1x′=max?(2,0,3,1)=1,此時(shí)窗口已經(jīng)到達(dá)輸入邊緣,按照卷積層同樣的方式,感受野窗口向下移動(dòng)一個(gè)步長,并回到行首,如下圖所示:
循環(huán)往復(fù),直至最下方、最右邊,獲得最大池化層的輸出,長寬為4×44×44×4,略小于輸入X的高寬,如下圖所示:
?由于池化層沒有需要學(xué)習(xí)的參數(shù),計(jì)算簡單,并且可以有效減低特征圖的尺寸,非常適合圖片這種類型的數(shù)據(jù),在計(jì)算機(jī)視覺相關(guān)任務(wù)中得到了廣泛的應(yīng)用。
?通過精心設(shè)計(jì)池化層感受野的高寬kkk和步長sss參數(shù),可以實(shí)現(xiàn)各種降維運(yùn)算。比如,一種常用的池化層設(shè)定是感受野大小k=2k=2k=2,步長s=2s=2s=2,這樣可以實(shí)現(xiàn)輸出只有輸入高寬一半的目的。如下兩圖所示,感受野大小k=3k=3k=3,步長s=2s=2s=2,輸入X\boldsymbol XX高寬為5×55×55×5,輸出O\boldsymbol OO高寬只有2×22×22×2。
池化層實(shí)現(xiàn)高寬減半2
總結(jié)
以上是生活随笔為你收集整理的深度学习之卷积神经网络(7)池化层的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CENTER OS7关闭防火墙
- 下一篇: 深度学习之卷积神经网络(8)BatchN