VGG16

概述

VGG是由Simonyan 和Zisserman在文献《Very Deep Convolutional Networks for Large Scale Image Recognition》中提出卷积神经网络模型,其名称来源于作者所在的牛津大学视觉几何组(Visual Geometry Group)的缩写。

VGG模型是2014年ILSVRC(ImageNet)竞赛的第二名,第一名是GoogLeNet。但是VGG模型在多个迁移学习任务中的表现要优于googLeNet。而且,从图像中提取CNN特征,VGG模型是首选算法。

VGG16 模型可以达到 92.7% 的测试准确度,在ImageNet的前5位。它的数据集包括 1400万张图像,1000个类别。

VGG16的分类信息:
https://www.malaoshi.top/show_1EF4vj09R8GC.html

VGG的输入图像 是 224x224x3,所以在卷积层中,每个卷积核有 3个通道

PS:该模型较早,现在有更快、更深、更准的模型

结构

VGG中根据卷积核大小和卷积层数目的不同,可分为A,A-LRN,B,C,D,E共6个配置(ConvNet Configuration)

其中以 D,E 两种配置较为常用,分别称为 VGG16 和 VGG19

六种结构配置:

由上图可,VGG16共包含:

  • 13个卷积层(Convolutional Layer),分别用conv3-XXX表示。
    • 3是卷积核尺寸(kernel size),即宽(width)和高(height)均为3
    • XXX是卷积核数量
  • 3个全连接层(Fully connected Layer),分别用FC-XXXX表示
    • XXXX是感知机数量
  • 5个池化层(Pool layer),分别用maxpool表示

其中,卷积层 和 全连接层 具有权重参数,因此也被称为 权重层(weight layers)

总数目为13+3=16个权重层(weight layers),即:VGG16中16的来源。

池化层不涉及权重,因此不属于权重层

特点

简单易懂,卷积核小,神经网络深:

  1. 卷积核大小相同
    卷积核宽(width)和高(height)均为3,3*3是很小的卷积核尺寸,步幅stride=1,填充方式padding=same,这样就能够使得每一个卷积层(张量)与前一层(张量)保持相同的宽和高。

  2. 池化层均采用相同的池化核参数
    池化层的参数均为2,即:池化后 缩小一半

  3. 模型是由若干 卷积层 和 池化层 堆叠(stack)构成,比较容易形成较深的网络结构
    (在2014年,16层已经被认为很深了)。

VGG的优点为: Small filters, Deeper networks.

块结构

VGG16的卷积层和池化层可以划分为不同的 块(Block),从前到后依次编号为Block1~Block5。

每一个块内包含若干卷积层和一个池化层,在同一块内,卷积核数量相同

如上图:

  • block2中包含2个卷积层,每个卷积层用conv3-128表示,即卷积核数量都是128
  • block3中包含3个卷积层,每个卷积层用conv3-256表示,即卷积核数量都是256

卷积核数量翻倍,由64依次增加到128,再到256,直至512保持不变,不再翻倍
图像高和宽减半,由 224→112→56→28→14→7

权重参数

尽管VGG的结构简单,但是所包含的权重数量却很大,达到了惊人的139,357,544个参数。这些参数包括卷积核权重和全连接层权重。

  • 对于第一个卷积层,卷积核数量是64,卷积核的通道数是3(输入图像的通道数是3),卷积核大小是3x3,因此总共有(3x3x3)x64 = 1728个参数
  • 计算全连接层的权重参数数目的方法为:前一层节点数×本层的节点数前一层节点数×本层的节点数。因此,全连接层的参数分别为:
    • 第一个全连接层:7x7x512x4096 = 1027,645,444
    • 第二个全连接层:4096x4096 = 16,781,321
    • 第三个全连接层:4096x1000 = 4096000

优点 VS 缺点

VGG16具有如此之大的参数数目,优点、缺点也很明显

优点:具有很高的拟合能力

缺点:

  • 参数多,训练时间慢,调参难度大。
  • 需要的存储容量大,不利于部署。
    例如存储VGG16权重值文件的大小为500多MB,不利于安装到嵌入式系统中。

VGG16的应用

https://blog.csdn.net/sparkexpert/article/details/70208572

keras api

https://www.malaoshi.top/show_1EF4cJOvhrva.html

感谢:https://www.cnblogs.com/lfri/p/10493408.html


原文出处:/show_1EF4cagtAUVw.html