[人工智能-深度学习-34]:卷积神经网络CNN - 常见分类网络- VGG16/VGG19网络结构分析与详解

Posted 文火冰糖的硅基工坊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[人工智能-深度学习-34]:卷积神经网络CNN - 常见分类网络- VGG16/VGG19网络结构分析与详解相关的知识,希望对你有一定的参考价值。

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/120894643


目录

第1章 卷积神经网络基础

1.1 卷积神经发展与进化史

1.2 卷积神经网络的核心要素

1.3 卷积神经网络的描述方法

1.4 人工智能三巨头  + 华人圈名人

第2章 VGG网络概述

2.1 VGG网络概述

2.2 VGG网络特点与改进

第3章 网络结构分析

3.1 网络结构描述 - 厚度法

3.2 网络结构描述 - 列表法

3.3 网络结构描述- 堆叠法

3.4 网络结构分析



第1章 卷积神经网络基础

1.1 卷积神经发展与进化史

 AlexNet是深度学习的起点,后续各种深度学习的网络或算法,都是源于AlexNet网络。

[人工智能-深度学习-31]:卷积神经网络CNN - 常见卷积神经网络综合比较大全_文火冰糖(王文兵)的博客-CSDN博客作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客本文网址:第1章 人工智能发展的3次浪潮1.1人工智能的发展报告2011-2020资料来源:清华大学、中国人工智能学会《人工智能的发展报告2011-2020》,赛迪研究院、人工智能产业创新联盟《人工智能实践录》,中金公司研究部► 第一次浪潮(1956-1974年):AI思潮赋予机器逻辑推理能力。伴随着“人工智能”这一新兴概念的兴起,人们对AI的未来充满了想象,人工智能迎来第一次发展浪潮。这.https://blog.csdn.net/HiWangWenBing/article/details/120835303

1.2 卷积神经网络的核心要素

[人工智能-深度学习-27]:卷积神经网络CNN - 核心概念(卷积、滑动、填充、参数共享、通道)_文火冰糖(王文兵)的博客-CSDN博客作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客本文网址:目录第1章 卷积中的“积”的定义第2章 卷积中的“卷”的定义第3章 填充第4章 单个卷积核的输出第5章 多个卷积核的输出第6章 卷积对图形变换第7章 池化层第8章 全连接的dropout第1章 卷积中的“积”的定义第2章 卷积中的“卷”的定义stride:反映的每次移动的像素点的个数。第3章 填充...https://blog.csdn.net/HiWangWenBing/article/details/120806277

1.3 卷积神经网络的描述方法

[人工智能-深度学习-28]:卷积神经网络CNN - 网络架构与描述方法_文火冰糖(王文兵)的博客-CSDN博客作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客本文网址:目录第1章 什么是卷积神经网络第2章 卷积神经网络的描述方法第3章 卷积神经网络的本质第4章 卷积神经网络的总体框框第5章卷积神经网络的发展与常见类型与分类第6章 常见的卷积神经网络6.1 AlexNet6.2 VGGNet6.3 GoogleNet: inception结构6.4 google net6.5 ResNet第7章 常见图形训练库第1.https://blog.csdn.net/HiWangWenBing/article/details/120806599

1.4 人工智能三巨头  + 华人圈名人

Yoshua Bengio、Yann LeCun、Geoffrey Hinton共同获得了2018年的图灵奖。

杰弗里·埃弗里斯特·辛顿(Geoffrey Everest Hinton),计算机学家、心理学家,被称为“神经网络之父”、“深度学习鼻祖”。Hinton是机器学习领域的加拿大首席学者,是加拿大高等研究院赞助的“神经计算和自适应感知”项目的领导者,是盖茨比计算神经科学中心的创始人,目前担任多伦多大学计算机科学系教授。2013年3月,谷歌收购 Hinton 的公司 DNNResearch 后,他便随即加入谷歌,直至目前一直在 Google Brain 中担任要职。

Yoshua Bengio是蒙特利尔大学(Université de Montréal)的终身教授,任教超过22年,是蒙特利尔大学机器学习研究所(MILA)的负责人,是CIFAR项目的负责人之一,负责神经计算和自适应感知器等方面,又是加拿大统计学习算法学会的主席,是ApSTAT技术的发起人与研发大牛。Bengio在蒙特利尔大学任教之前,是AT&T贝尔实验室 & MIT的机器学习博士后。

Yann LeCun,担任Facebook首席人工智能科学家和纽约大学教授,1987年至1988年,Yann LeCun是多伦多大学Geoffrey Hinton实验室的博士后研究员。

第2章 VGG网络概述

2.1 VGG网络概述

VGG模型是2014年ILSVRC竞赛的第二名,第一名是GoogLeNet

模型的名称——“VGG”代表了牛津大学的Oxford Visual Geometry Group(牛津视觉几何组),该小组隶属于1985年成立的Robotics Research Group,该Group研究范围包括了机器学习到移动机器人。

2.2 VGG网络特点与改进

VGG在AlexNet基础上做了改进,整个网络都使用了同样大小的3*3卷积核尺寸和2*2最大池化尺寸,网络结果简洁。

(1)小卷积核。作者将卷积核全部替换为3x3(极少用了1x1);

VGG16相比AlexNet的一个改进是采用连续的几个3x3的卷积核代替AlexNet中的较大卷积核(11x11,7x7,5x5)

对于给定的感受野(与输出有关的输入图片的局部大小),采用堆积的小卷积核优于采用大的卷积核,因为多层非线性层可以增加网络深度来保证学习更复杂的模式,而且代价还比较小(参数更少)。

简单来说,在VGG中,使用了3个3x3卷积核来代替7x7卷积核,使用了2个3x3卷积核来代替5*5卷积核,这样做的主要目的是在保证具有相同感知野的条件下,提升了网络的深度,在一定程度上提升了神经网络的效果。

比如,3个步长为1的3x3卷积核的一层层叠加作用可看成一个大小为7的感受野(其实就表示3个3x3连续卷积相当于一个7x7卷积),其参数总量为 3x(9xC^2) ,如果直接使用7x7卷积核,其参数总量为 49xC^2 ,这里 C 指的是输入和输出的通道数。很明显,27xC^2小于49xC^2,即减少了参数;而且3x3卷积核有利于更好地保持图像性质。

小的卷积核的好处:

  • 有利于提取大图片中,局部的特征。
  • 有利于通过细微特征,对图片进行区分。

(2)小池化核。相比AlexNet的3x3的池化核,VGG全部为2x2的池化核;

(3)多个卷积层后才会有一次池化层,并非1:1关系。

(4)层数更深,抽象程度更高

(5)特征图更宽,特征信息更丰富

(6)卷积核专注于扩大通道数,即增加特征图的个数。

(7)池化专注于缩小宽和高。

(8)模型架构上更深更宽的同时,计算量的增加放缓;

(9)全连接层:VGG可是有3个全连接层。

2.3 缺点

  • 参数量有140M之多,需要更大的存储空间。

网上有的文章称:发现这些全连接层即使被去除,对于性能也没有什么影响,这样就显著降低了参数数量。本文作者并没有做实验进行比较。

VGG相对其他的方法,参数空间很大,最终的model有500多m,AlexNet只有200m,GoogLeNet更少,所以train一个vgg模型通常要花费更长的时间。

所幸有公开的pretrained model(其他人预先训练好的模型)让我们很方便的使用。

第3章 网络结构分析

3.1 网络结构描述 - 厚度法

这种方式只能描述一种网络结构。

以网络结构D(VGG16)为例,介绍其各层的处理过程如下:

(0)输入224x224x3的图片

(1)第一轮:3次卷积 

  • 经64个3x3的卷积核作两次卷积+ReLU,卷积后的尺寸变为224x224x64
  • 作max pooling(最大化池化),池化单元尺寸为2x2(效果为图像尺寸减半),池化后的尺寸变为112x112x64

(2)第2轮:3次卷积 +1一次池化

  • 经128个3x3的卷积核作两次卷积+ReLU,尺寸变为112x112x128
  • 作2x2的max pooling池化,尺寸变为56x56x128

(3)第3轮:3次卷积 + 1次池化

  • 经256个3x3的卷积核作三次卷积+ReLU,尺寸变为56x56x256
  • 作2x2的max pooling池化,尺寸变为28x28x256

(4)第4轮:3次卷积 + 1次池化

  • 经512个3x3的卷积核作三次卷积+ReLU,尺寸变为28x28x512
  • 作2x2的max pooling池化,尺寸变为14x14x512

(5)第5论3次卷积 + 1次池化

  • 经512个3x3的卷积核作三次卷积+ReLU,尺寸变为14x14x512
  • 作2x2的max pooling池化,尺寸变为7x7x512

(6)第6轮:3次全连接

  • 与两层1x1x4096,一层1x1x1000进行全连接+ReLU(共三层)
  • 通过softmax输出1000个预测结果

3.2 网络结构描述 - 列表法

这种方式适合描述多个相似的网络结构

3.3 网络结构描述- 堆叠法

这种方式可以描述任意的网络结构

3.4 网络结构分析

(1)VGG不是单一的网络结构,而是有多种不同的网络结构组成的系列。

  • 如VGG16表示为16层的VGG, VGG19表示为19层的VGG.
  • 如VGG16-C, VGG16-D

(2)整个网络输出分类数为1000,即能够进行1000种图片的分类。

(3)由于卷积核的大小,都为3 * 3,因此在某些形式的网络结构图中就不用再体现了。卷积核的大小,对参数量和计算量都是强相关的。

(4)由于池化层的大小,都是2 * 2,因此在网络结构图中就不用再体现了。

(5)3*3 conv,64表示:3*3表示卷积核的大小,64表示卷积核的个数,因此这种描述方式可以表达该层的参数的个数,但无法表达计算量的大小。

总结:

VGG网络,仅仅在网络的规模层面上进行了扩展,并没有对网络的架构进行变革,只是简单的通过增加网络的层数以及卷积层的尺寸而已。


作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客

本文网址:https://blog.csdn.net/HiWangWenBing/article/details/120894643

以上是关于[人工智能-深度学习-34]:卷积神经网络CNN - 常见分类网络- VGG16/VGG19网络结构分析与详解的主要内容,如果未能解决你的问题,请参考以下文章

[人工智能-深度学习-24]:卷积神经网络CNN - CS231n解读 - 卷积神经网络基本层级

[人工智能-深度学习-37]:卷积神经网络CNN - 重构神经网络的疑惑与思考?

[人工智能-深度学习-26]:卷积神经网络CNN - 为啥要卷积神经网络以及卷积神经网络的应用

[人工智能-深度学习-28]:卷积神经网络CNN - 网络架构与描述方法

[人工智能-深度学习-32]:卷积神经网络CNN - 常见分类网络- AlexNet

[人工智能-深度学习-31]:卷积神经网络CNN - 常见卷积神经网络综合比较大全