論文《Network in Network》筆記


論文:Lin M, Chen Q, Yan S. Network In Network[J]. Computer Science, 2013.

參考:關於CNN中1×1卷積核和Network in Network的理解

參考: 深度學習(二十六)Network In Network學習筆記

1. 1×1 convolutions

作用:1×1卷積核可以起到一個跨通道聚合的作用所以進一步可以起到降維(或者升維)的作用,起到減少參數的目的。 比如當前層為 x*x*m即圖像大小為x*x,特征層數為m,然后如果將其通過1×1的卷積核,特征層數為n,那么只要n<m這樣就能起到降維的目的,減少之后步驟的運算量(當然這里不太嚴謹,需要考慮1×1卷積核本身的參數個數為m×n個)。換句話說,如果使用1x1的卷積核,這個操作實現的就是多個feature map的線性組合,可以實現feature map在通道個數上的變化。 而因為卷積操作本身就可以做到各個通道的重新聚合的作用,所以1×1的卷積核也能達到這個效果。

2. MLP卷積層

一般來說,如果我們要提取的一些潛在的特征是線性可分的話,那么對於線性的卷積運算來說這是足夠了。然而一般來說我們所要提取的特征一般是高度非線性的。在傳統的CNN中,也許我們可以用超完備的濾波器,來提取各種潛在的特征。比如我們要提取某個特征,於是就用了一大堆的濾波器,把所有可能的提取出來,這樣就可以把想要提取的特征也覆蓋到,然而這樣存在一個缺點,那就是網絡太恐怖了,參數太多了。

CNN高層特征其實是低層特征通過某種運算的組合。於是作者就根據這個想法,提出在每個局部感受野中進行更加復雜的運算,提出了對卷積層的改進算法:MLP卷積層。MLP層可以看成是每個卷積的局部感受野中還包含了一個微型的多層網絡

3. Maxout層

原先為:

現在為:

3. 全局均值池化

傳統的卷積神經網絡卷積運算一般是出現在低層網絡。對於分類問題,最后一個卷積層的特征圖通過量化然后與全連接層連接,最后在接一個softmax邏輯回歸分類層。這種網絡結構,使得卷積層和傳統的神經網絡層連接在一起。我們可以把卷積層看做是特征提取器,然后得到的特征再用傳統的神經網絡進行分類。

然而,全連接層因為參數個數太多,往往容易出現過擬合的現象,導致網絡的泛化能力不盡人意。於是Hinton采用了Dropout的方法,來提高網絡的泛化能力。

本文提出采用全局均值池化的方法,替代傳統CNN中的全連接層。與傳統的全連接層不同,我們對每個特征圖一整張圖片進行全局均值池化,這樣每張特征圖都可以得到一個輸出。這樣采用均值池化,連參數都省了,可以大大減小網絡,避免過擬合,另一方面它有一個特點,每張特征圖相當於一個輸出特征,然后這個特征就表示了我們輸出類的特征。這樣如果我們在做1000個分類任務的時候,我們網絡在設計的時候,最后一層的特征圖個數就要選擇1000。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM