深度篇—— Deep Learning 经典网络 model 发展史(五) 细说 GoogleNet 结构和特点 (包括 v1, v2, v3)

返回主目录

返回 Deep Learning 经典网络 model 发展史 目录

上一章:深度篇—— Deep Learning 经典网络 model 发展史(四) 细说 VGG16 结构和特点

下一章:深度篇—— Deep Learning 经典网络 model 发展史(六) 细说 ResNet 结构和特点

本小节,细说 GoogleNet 结构和特点 (包括 v1, v2, v3),下一小节细说 ResNet 结构和特点

GoogleNet 论文:Going deeper with convolutions

二. 经典网络(Classic Network)

5. GoogleNet (包括 v1, v2, v3)

在 2014 年 ImageNet 分类任务上击败 VGG-Net 夺得冠军,其实力肯定是非常深厚的。GoogleNet 跟 AlexNet、VGG-Net 这种单纯依靠网络结构而改进网络性能的思路不一样,它另辟幽径,在加深网络(22 层) 的同时,也在网络结构上做了创新,引入 Inception 结构代替了单纯的 卷积 + 激活函数 的传统操作(这思路最早由 Network In Network 提出)。GoogleNet 进一步把对卷积神经网络的研究推上新的高度。

(1). Inception V1  model

   ①. V1 网络图形:

     4 个 卷积得到的 feature map 的 high 和 width 不变,然后再通过 channels 进行 concatenation 起来。

 

   ②. Inception V1 model 变种 (GoogleNet 论文中用的是这种)

        V1 变种网络图形

    卷积得到的 feature map 的 high 和 width 不变,然后再通过 channels 进行 concatenation 起来。

 

   ③. GoogleNet 的特点:

      a. GoogleNet 采用了 9 个 Inception 模块结构,共 22 层。

      b. 网络最后采用了 avg_pooling 来代替全连接层,想法来自于 NIN,参数量仅为 AlexNet 的 \large \frac{1}{12},性能优于 AlexNet。事实证明可以将 TOP1 accuracy 提高 0.6%,但是,实际在最后还是加了一个全连接层,主要是为了方便以后做 fine-tuning。

      c. 虽然移除了部分全连接层,但是网络中依然使用了 Dropout。

      d. 为了避免梯度消失,网络额外增加了 2 个 辅助的 softmax 用于向前传导梯度。这两个辅助的分类器的 loss 应该加一个衰减系数。

      e. GoogleNet 的主要思想:

        (a). 深度,层数更深

        (b). 宽度,增加了多种核 \large 1 \times 1, \; 3 \times 3,\; 5 \times 5,还有直接用 max pooling。为了避免 concate 时 feature map 厚度过大,分别加上 \large 1 \times 1 的卷积核来降低 feature map 的厚度。

      f. 缺点:

        (a). 参数太多,若训练数据集有限,容易过拟合。

        (b). 网络越大,计算复杂度越大,难以应用。

        (c). 网络越深,梯度越往后传越容易弥散,难以优化模型。

 

   ④. GoogleNet 结构图

 

(2). Inception V2  model

   ①. V2 网络图形

 

   ②. V2 的特点

      a. V2 在 V1 的基础上学习了 VGG-Net,用两个 \large 3 \times 3 的卷积核代替 \large 5 \times 5 的大卷积核,并提出了 BN 方法,对每一层都使用 BN。

      b. 大尺寸的卷积核可以带来更大的感受野,但同样也意味着更多的参数。比如 \large 5 \times 5 卷积核参数是 \large 3 \times 3 卷积核参数的  \large \frac{5 \times 5}{3 \times 3} = 2.78 倍。

      c. 用 2 个 \large 3 \times 3 卷积核代替 \large 5 \times 5 的大卷积核,既保持了感受野的范围,同时又减少了参数,并减轻过拟合。

      d. BN (Batch Normalization, BN) 是一个非常有效的正则化方法,可以让大型卷积网络的训练速度加速很多倍,同时收敛后的分类准确率也可以得到大幅度提升。

      e. 去除局部响应归一化 LRN (Local Response Normalization, LRN)

      f. V2 通过去除 LRN,增加 BN, 增大学习率,对训练数据进行更彻底的 shuffle 等操作,在训练达到 V1 的准确率时快了 14 倍,并且模型在收敛时的准确率上限更高。

 

(3). Inception V3  model

   ①. V3 网络图形

 

   ②. V3 的另一种特征网络图形

 

   ③. V3 特性

       V3 在 V 2 的基础上,引入了小卷积因式分解思想,将一个较大的二维卷积拆成两个较小的一维卷积(如将 \large n \times n 拆成 \large 1 \times n 和 \large n \times 1)。这样一方面节约了大量参数,加速运算并减缓了过拟合,另一方面增加了一层非线性,扩展模型表达能力,可以处理更多、更丰富的空间特征,增加特征多样性。

                  

返回主目录

返回 Deep Learning 经典网络 model 发展史 目录

上一章:深度篇—— Deep Learning 经典网络 model 发展史(四) 细说 VGG16 结构和特点

下一章:深度篇—— Deep Learning 经典网络 model 发展史(六) 细说 ResNet 结构和特点

发布了63 篇原创文章 · 获赞 16 · 访问量 5999

猜你喜欢

转载自blog.csdn.net/qq_38299170/article/details/104241821