D2L-41-VGG
# VGG
2022-03-03
Tags: #DeepLearning #VGG #CNN
- 模块化是VGG网络最重要的思想.
- 模块化进一步带来了自由性, 不同的块配置可以带来不同的模型表现.
# 规范化 - 模块化
- 与芯片设计中工程师从放置晶体管到逻辑元件再到逻辑块的过程类似,神经网络架构的设计也逐渐变得更加抽象。研究人员开始从单个神经元的角度思考问题,发展到整个层,现在又转向块,重复层的模式。
- 使用块的设计同样让模型更加简洁.
# VGG块
VGG将 AlexNet 里面三层连续的卷积拿出来, 抽象成VGG块, 作为构建网络的基础模式.
VGG块是可变的, 超参数变量
conv_arch
指定了每个VGG块里卷积层个数和输出通道数。- 方块模型解释:
- 不要想当然地把同一个大小的层作为一个块, VGG块在增大Channel数地同时减半输出尺寸. 下图是VGG 16的示意图, 16是指网络里面有13个卷积层加3个全连接层. VGG19: 1
VGG块的参数
- 为了保持卷积输入输出尺寸不变, 卷积层采用了 $3\times3$ 的核加上 $1$ 的Padding.
- VGG的Pooling窗口大小为 $2\times2$, Stride=2, 所以输出图像的尺寸减半. (下采样到1/4的分辨率)
为什么不添加全连接层来加深网络呢?
- 为了使网络更深, 我们可以添加更多的全连接层(FC)或者卷积层(Conv), 但是因为全连接层过于昂贵(参数数量庞大), 我们通常选择添加更多的卷积层.
为什么不用大一点的卷积核?
- 在VGG论文中,Simonyan和Ziserman尝试了各种架构。特别是他们发现深层且窄的卷积(即 $3×3$ )比较浅层且宽的卷积更有效。2
- 但是为什么更大的卷积核, 更深的网络, 效果更好?
- 一个可能的原因是: 具有相同感知野的条件下,小的卷积核提升了网络的深度
- 那为什么深的网络效果好? #todo
# 自由性 - 模型的多样性
# Origin
- VGG由牛津大学的 视觉几何组(visualgeometry group) 提出.