天天看點

卷積神經網絡中參數量的計算與模型占用顯存的計算

關于參數的計算

卷積神經網絡中參數量的計算與模型占用顯存的計算

如果你了解了上圖的列子,歡迎你再嘗試自己計算一下VGG16的總參數量

值得一提的是,在訓練的時候,因為有forward 和 backward,是以參數量要乘以2

另外一個就是網絡所需要的記憶體,這個也是非常重要的一個名額,因為目前的GPU記憶體空間非常有限。可以從下圖得知,在網絡最開始的幾層,占用的GPU記憶體最多,而絕大多數的參數,都來自于全連接配接層,這也是一個後來全局池化被運用而全連接配接層被減少使用的原因。

卷積神經網絡中參數量的計算與模型占用顯存的計算
  • 藍色為參數量的計算,計算方式為:sum(卷積核大小×通道數×卷積核數量 )= 參數量
  • 紅色為顯存占用的計算,因為不僅有前向運算,還有反向運算故×2。在圖像運算時通常使用float32,每個數字為4bytes,故×4,計算方式為:sum(每次運算後輸出的特征圖高×寬×通道數)×2×4 = 顯存

繼續閱讀