Depth-wise Convolution的理解


Depth-wise Convolution的目的是為了減少計算量,提高計算速度。

對於Depth-wise Convolution來說,一個卷積核只負責一個通道,一個通道只被一個卷積核卷積。

對於普通的卷積層來說:

 

input feature map為[12,12,3],使用256個[5,5,3]的卷積核,得到output feature map為[8,8,256],參數量為5*5*3*256=19200,所需計算乘法的次數為5*5*3*256*8*8=1228800(FLOPs)。

對於Depth-wise Convolution來說:

 

 

 

 分為兩步:

(1)通道分開卷積,input feature map為[12,12,3],分別使用3個[5,5,1]的卷積核,得到output feature map[8,8,3]

(2)再一起卷積,input feature map為[8,8,3],使用256個[1,1,3]的卷積核,得到output feature map[8,8,256]

參數量為:5*5*1*3+1*1*3*256=843,所需計算的乘法次數為5*5*1*3*8*8+1*1*3*256*8*8=53952(FLOPs)。

參考:https://zhuanlan.zhihu.com/p/149564248


免責聲明!

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



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