論文:MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications(CVPR 2017)
文章目錄
-
- 針對問題
- Depthwise Sparable Convolutions
-
-
- 拆分标準卷積
- 為什麼可以拆分
- 為什麼拆分
- BN層
- 進一步減少計算
- 網絡架構
-
- 相關實驗
- 參考文獻
針對問題
消費類産品很多是嵌入式的終端産品,嵌入式裝置性能不強,即使考慮雲計算,也需要消耗大量的帶寬資源和計算資源,是以建構輕量級的深層神經網絡具有較大的價值
Depthwise Sparable Convolutions
拆分标準卷積
标準卷積核:圖(a) 表示 N N N 個通道為 M M M 的 D K × D K D_K\times D_K DK×DK 大小的标準卷積核
Depthwise Sparable Convolutions:将正常卷積替換為 (b) 操作和 (c) 操作 a ⟹ b → c a\Longrightarrow b\to c a⟹b→c :
- (b) 可了解為:将 M M M個通道的特征圖拆開,每個通道的特征圖分别進行通道數為 1 的 D K × D K D_K\times D_K DK×DK 标準卷積,然後合并通道
- (c) 表示标準的 1 × 1 1\times 1 1×1 卷積操作

為什麼可以拆分
若特征圖通道數為 M M M:
- 經過 N N N 個 3 × 3 3\times 3 3×3 的标準卷積,得到輸出特征圖譜通道數為 N N N大小為 D F × D F D_F\times D_F DF×DF
- 将标準卷積替換為 Depthwise Sparable Convolutions,也可以得到通道數為 N N N大小為 D F × D F D_F\times D_F DF×DF的輸出特征圖
由此可知:
- 标準卷積和Depthwise Sparable Convolutions在特征圖平面和通道間均有操作,且兩個次元上的操作均為簡單的加或乘,最終得到的輸出特征圖譜大小和通道數均相同,理論上标準卷積可以得到的結果,Depthwise Sparable Convolutions也可得到(前提)
- Depthwise Sparable Convolutions雖然參數少,但是相當于加深了網絡,其非線性表達能力并沒有下降太多,且一般"瘦深"的網絡比"胖淺"的網絡更容易學習,非線性表達能力相對較強
為什麼拆分
若輸入特征圖通道數為 M M M,輸出特征圖譜通道數為 N N N ,大小為 D F × D F D_F\times D_F DF×DF,卷積核大小為 D K × D K D_K\times D_K DK×DK,那麼
- 标準卷積op數: D F × D F × D K × D K × M × N D_F\times D_F\times D_K\times D_K\times M\times N DF×DF×DK×DK×M×N
-
拆分卷積 op數: D F × D F × D K × D K × M ⏟ ( 2 ) + D F × D F × M × N ⏟ ( 3 ) \underbrace{D_F\times D_F\times D_K\times D_K\times M}_{(2)}+\underbrace{D_F\times D_F\times M\times N}_{(3)} (2)
DF×DF×DK×DK×M+(3)
DF×DF×M×N
标準卷積op數 拆分卷積op數 = D F × D F × D K × D K × M + D F × D F × M × N D F × D F × D K × D K × M × N = 1 N + 1 D K 2 \frac{\text{标準卷積op數}}{\text{拆分卷積op數}}=\frac{D_F\times D_F\times D_K\times D_K\times M + D_F\times D_F\times M\times N}{D_F\times D_F\times D_K\times D_K\times M\times N}=\frac1N+\frac{1}{D_K^2} 拆分卷積op數标準卷積op數=DF×DF×DK×DK×M×NDF×DF×DK×DK×M+DF×DF×M×N=N1+DK21
一般 N N N相對于 D K D_K DK較大,如果卷積核大小為 D K = 3 D_K=3 DK=3,則計算量約等于原來的 1 9 \frac19 91,可以節省大量的空間和時間
BN層
Depthwise Sparable Convolutions 使用 BN:
進一步減少計算
按比例減少通道數,降低分辨率
網絡架構
相關實驗
參考文獻
【1】網絡解析(二):MobileNets詳解
【2】MobileNets—深度學習模型的加速