VGG 网络结构详解与复现

VGG 网络结构详解与复现

部分参考了Amusi的知乎ZHUAN专栏文章《一文读懂VGG网络》

前言

VGG = Visual Geometry Group, 是Oxford的同名视觉组提出的深度网络。论文中提出了VGG-11, VGG-13, VGG-16, VGG-19等网络。其中全连接层数量都为3层。

VGG 相比于AlexNet的一个重要改进是用连续的3x3卷积代替了AlexNet中较大的卷积核。

使得多次小规模卷积(e.g. 三次 3 x 3 卷积)之后得到特征图具有与单次大规模卷积(e.g. 一次 7 x 7卷积)相同的感受野。对于给定的感受野,采用堆积小卷积核的方式增加了非线性层的数量,使得神经网络能够学到更复杂的模式,同时付出更小的计算代价(参数量更少)

  • 参数量计算:

    对于一个三通道输入:

    • 7 x 7 卷积,共使用n组卷积核: 7 × 7 × n = 49 n 7 \times 7 \times n = 49n 7×7×n=49n
    • 3个3 x 3 卷积进行堆叠,共使用n组卷积核: 3 × 3 × 3 × n = 27 n 3 \times 3 \times 3 \times n = 27n 3×3×3×n=27n
什么是感受野?

感受野是CNN中的一个重要概念(同时也是基础中的基础)。所谓感受野即是卷积层输出的特征图上的某一个像素在输入图片上对应的区域。

我们来回顾一下感受野大小的计算公式:
r l = r l − 1 + ( k l − 1 ) × ∏ i = 0 l − 1 s i r_l = r_{l-1} + (k_l - 1) \times \prod_{i=0}^{l-1}s_i r

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VGG19是一种深度卷积神经网络(CNN),由牛津大学计算机视觉组发明。它是VGGNet的一个变种,具有19个卷积层和3个全连接层。下面是VGG19的网络结构详解: 1. 输入层:VGG19的输入层接受一张大小为224x224的RGB图像。 2. 卷积层1: VGG19的第一层是7x7的卷积核,数量为64,步幅为2,填充为same。激活函数使用ReLU。 3. 卷积层2: VGG19的第二层是5x5的卷积核,数量为64,步幅为2,填充为same。激活函数使用ReLU。 4. 池化层1: VGG19的第三层是2x2的最大池化层,步幅为2。 5. 卷积层3: VGG19的第四层是3x3的卷积核,数量为128,步幅为1,填充为same。激活函数使用ReLU。 6. 卷积层4: VGG19的第五层是3x3的卷积核,数量为128,步幅为1,填充为same。激活函数使用ReLU。 7. 池化层2: VGG19的第六层是2x2的最大池化层,步幅为2。 8. 卷积层5: VGG19的第七层是3x3的卷积核,数量为256,步幅为1,填充为same。激活函数使用ReLU。 9. 卷积层6: VGG19的第八层是3x3的卷积核,数量为256,步幅为1,填充为same。激活函数使用ReLU。 10. 卷积层7: VGG19的第九层是3x3的卷积核,数量为256,步幅为1,填充为same。激活函数使用ReLU。 11. 卷积层8: VGG19的第十层是3x3的卷积核,数量为256,步幅为1,填充为same。激活函数使用ReLU。 12. 池化层3: VGG19的第十一层是2x2的最大池化层,步幅为2。 13. 卷积层9: VGG19的第十二层是3x3的卷积核,数量为512,步幅为1,填充为same。激活函数使用ReLU。 14. 卷积层10: VGG19的第十三层是3x3的卷积核,数量为512,步幅为1,填充为same。激活函数使用ReLU。 15. 卷积层11: VGG19的第十四层是3x3的卷积核,数量为512,步幅为1,填充为same。激活函数使用ReLU。 16. 卷积层12: VGG19的第十五层是3x3的卷积核,数量为512,步幅为1,填充为same。激活函数使用ReLU。 17. 池化层4: VGG19的第十六层是2x2的最大池化层,步幅为2。 18. 卷积层13: VGG19的第十七层是3x3的卷积核,数量为512,步幅为1,填充为same。激活函数使用ReLU。 19. 卷积层14: VGG19的第十八层是3x3的卷积核,数量为512,步幅为1,填充为same。激活函数使用ReLU。 20. 卷积层15: VGG19的第十九层是3x3的卷积核,数量为512,步幅为1,填充为same。激活函数使用ReLU。 21. 卷积层16: VGG19的第二十层是3x3的卷积核,数量为512,步幅为1,填充为same。激活函数使用ReLU。 22. 池化层5: VGG19的第二十一层是2x2的最大池化层,步幅为2。 23. 全连接层1: VGG19的第二十二层是4096个神经元的全连接层,激活函数使用ReLU。 24. Dropout层1: VGG19的第二十三层是一个Dropout层,防止过拟合。 25. 全连接层2: VGG19的第二十四层是4096个神经元的全连接层,激活函数使用ReLU。 26. Dropout层2: VGG19的第二十五层是一个Dropout层,防止过拟合。 27. 全连接层3: VGG19的第二十六层是1000个神经元的全连接层,用于输出分类结果。 总结:VGG19是一个非常深的卷积神经网络,它的网络结构非常简单而清晰,通过多次重复使用3x3的卷积核和2x2的最大池化层来增加网络深度,同时使用Dropout层来防止过拟合。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值