常见的CNN模型介绍

第一次写博客 目的是练习一下那种感觉,不足之处还望见谅

LeNet模型

用途:

  • LeNet主要用来进行手写字符的识别与分类

特点

  1. 每个卷积层包括三部分:卷积、池化和非线性**函数(sigmoid**函数)
  2. 使用卷积提取空间特征
  3. 降采样层采用平均池化

网络结构
常见的CNN模型介绍
上图为LeNet结构图,是一个6层网络结构:三个卷积层,两个下采样层和一个全连接层(图中C代表卷积层,S代表下采样层,F代表全连接层)。其中,C5层也可以看成是一个全连接层,因为C5层的卷积核大小和输入图像的大小一致,都是5*5。

VGG

用途:

  • 该网络主要是泛化性能很好,容易迁移到其他的图像识别项目上

特点

  1. 主要的区别,一个字:深,两个字:更深。把网络层数加到了16-19层(不包括池化和softmax层),而AlexNet是8层结构。
  2. 将卷积层提升到卷积块的概念。卷积块有2~3个卷积层构成,使网络有更大感受野的同时能降低网络参数,同时多次使用ReLu**函数有更多的线性变换,学习能力更强。
  3. 在训练时和预测时使用Multi-Scale做数据增强。训练时将同一张图片缩放到不同的尺寸,在随机剪裁到224*224的大小,能够增加数据量。预测时将同一张图片缩放到不同尺寸做预测,最后取平均值。

常见的CNN模型介绍

上图为VGG16的网络结构,共16层(不包括池化和softmax层),所有的卷积核都使用33的大小,池化都使用大小为22,步长为2的最大池化,卷积层深度依次为64 -> 128 -> 256 -> 512 ->512。

原文链接