1. 程式人生 > >經典CNN模型計算量與內存需求分析

經典CNN模型計算量與內存需求分析

alexnet pac info border 通信 獲得 margin tab lex

表1 CNN經典模型的內存,計算量和參數數量對比

AlexNet

VGG16

Inception-v3

模型內存(MB)

>200

>500

90-100

參數(百萬)

60

138

23.2

計算量(百萬)

720

15300

5000

1. CNN模型具體分析(以AlexNet網絡模型為例)

1.1 網絡結構

技術分享圖片

圖1 AlexNet網絡結構

AlexNet有5個卷積層和3個全連接層

C1:96×11×11×3 (卷積核個數/寬/高/深度) 34848個

C2:256×5×5×48(卷積核個數/寬/高/深度) 307200個

C3:384×3×3×256(卷積核個數/寬/高/深度) 884736個

C4:384×3×3×192(卷積核個數/寬/高/深度) 663552個

C5:256×3×3×192(卷積核個數/寬/高/深度) 442368個

R1:4096×6×6×256(卷積核個數/寬/高/深度) 37748736個

R2:4096×4096 16777216個

R3:4096×1000 4096000個

共6000萬個參數

1.2 AlexNet模型內存大小計算

6000萬(個參數)×32位(float32)=19.2億位≈228.88MB

1.3 AlexNet模型計算力消耗

技術分享圖片

圖2 AlexNet模型每層每秒浮點運算次數及參數數量

1.4 AlexNet網絡模型配置

AlexNet網絡模型獲得了2012年ImageNet比賽的冠軍。AlexNet使用兩塊GTX580顯卡進行訓練,兩塊GPU各訓練網絡的一部分,在第二個卷積層和全連接層兩塊GPU之間才進行互相通信。

經典CNN模型計算量與內存需求分析