目录

​第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 卷积神经发展与进化史

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

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

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

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

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

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

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 网络结构描述 - 厚度法

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

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

以网络结构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 网络结构描述 - 列表法

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

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

3.3 网络结构描述- 堆叠法

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

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

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