vgg16卷积层的计算量_深度学习_经典网络_VGG16和ResNet152哪个参数量更多
首先,我們我們知道深度學習中網絡的計算量代表時間復雜度,參數量代表空間復雜度。
從ResNet的論文中可知(ResNet論文可在這個文章中的第六部分找到)152層的殘差網絡在時間復雜度上和VGG16是一樣大的。
接下來我們先對VGG16的計算量(時間復雜度)和參數量(空間復雜度)都進行估算。(VGG網絡的相關知識可以在這篇文章中了解)
我們以VGG16的第一層卷積為例:
輸入圖像224 * 224 * 3,輸出224 * 224 * 64,卷積核大小為3 * 3.
計算量: Times = 224 * 224 * 3 * 3 * 64=8.7 * 10^7
參數量: Space = 3 * 3 * 3 * 64=1728
我們再對最后一層卷積進行計算:
輸入 14 * 14 * 512,輸出 14 * 14 * 512,卷積核大小為3 * 3
計算量: Times = 14 * 14 * 3 * 3 * 512 * 512 = 4.6 * 10^8
參數量: Space = 3 * 3 * 512 * 512 = 2.4 * 10^6
我最后對最后一層全連接層進行計算:
全連接層可以看成是一種特殊的卷積層,上層為1 * 1 * 4096,下層為 1 * 1 * 1000,使用的是1 * 1的卷積核進行卷積。
計算量: Times = 1 * 1 * 1 * 1 * 4096 * 1000 = 4 * 10^6
參數量: Space = 1 * 1 * 4096 * 1000 = 4 * 10^6
VGG16網絡總結:
卷積層的時間復雜度大致是在同一數量級的。
隨著網絡深度的加深,卷積層的空間復雜度快速上升(每層的空間復雜度是上一層的兩倍)。
全連接層的空間復雜度比卷積層的最后一層還大。
說了以上的內容,我們回過頭來再看問題:VGG16核ResNet152哪個參數量更多?
應該是VGG16參數量更多,因為ResNet152是用了Bottleneck Design結構,這個結構有兩個1 * 1 和一個3 * 3的卷積組成,大大縮減了參數量。(關于Bottleneck可以參考這篇文章的第一部分)
總結
以上是生活随笔為你收集整理的vgg16卷积层的计算量_深度学习_经典网络_VGG16和ResNet152哪个参数量更多的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql按升序创建索引_Mysql中的
- 下一篇: spark 写tidb_优秀的数据工程师