2 AI论文笔记--Rethinking the Inception Architecture for Computer Vision

2 AI论文笔记–Rethinking the Inception Architecture for Computer Vision

原文地址:https://arxiv.org/abs/1512.00567

还不错的笔记:

1、InceptionV1-V4演进:https://blog.csdn.net/qq_30815237/article/details/89046890

2、别人的笔记https://blog.csdn.net/qq_39109729/article/details/109117613
论文课程学习来自—知识星球—同济子豪兄


该文章主要了解:

  • 作者在Inception v1模块的基础上,对原本Inception模块内部进行的优化调整,提出了新的2种分解卷积核的方法,并提出新的Incepiton模块;
    • 其一,5X5的卷积分解为(3X3卷积核+3X3卷积核),且感受野都是5X5,如下图;
    • 其二,将3X3卷积分解为(1X3卷积核+3X1卷积核)两个不对称卷积(空间可分离卷积),如下图;
      2 AI论文笔记--Rethinking the Inception Architecture for Computer Vision
  • 模型设计的通用设计原则(后面有详细讲到)
    • 原则一: 要避免过度的降维和压缩特征导致representational bottlenecks(特征表示的瓶颈),特别是在网络的浅层;
    • 原则二: 见下面详细讲解;
    • 原则三: 利用1X1卷积进行空间信息的聚合(Spatial aggregation,文中主要指大卷积核卷积)不会对模型的表征造成大的影响;
    • 原则四: 设计网络的时候要考虑网络的深度(卷积层的层数)和宽度(每一层卷积核的个数)的均衡,才能最大化提高模型的性能;若要提升深度和宽度,应该让它们一起提升(increase in parallel)。

以下是论文的部分讲解

文章结构:

Abstract

1 Introduction (前言)

2 General Design Principles (通用设计原则)

3 Factorizing Convolutions with Large Filter Size (分解大卷积核的卷积)

​ 3.1 Factorization into smaller convolutions (将5x5卷积分解为两个3x3卷积)

​ 3.2 Spatial Factorization into Asymmetric Convolutions

4 Utility of Auxiliary Classifiers (辅助分类器的作用)

5 Efficient Grid Size Reduction (高效下采样技巧)

6 Inception-v2

7 Model Regularization via Label Smoothing

8 Training Methodology

9 Performance on Lower Resolution Input

10 Experimental Results and Comparisons

11 Conclusions


Abstract

  • 卷积神经网络在计算机视觉领域大放异彩
  • 在加宽和加深网络的同时,我们要考虑计算的效率
  • 探索了可分离卷积正则化去提高计算效率

1 Introduction

  • CNN在计算机试卷的成功应用促进了高性能CNN模块本身的研究;

  • 需考虑计算效率,部署于嵌入式设备;

  • 复杂的Inception架构会使改变网络结构变得困难,Inception模块不能单纯地进行堆叠,当堆叠太多层时,性能不会提升。

  • 这篇论文中,先会介绍模型地通用设计原则和一些优化的思想,然后再探索新的Inception结构

2 General Design Principles!!!!!!

  • 原则一:避免过度的降维压缩特征导致representational bottlenecks(特征表示的瓶颈),特别是在网络的浅层。

    • 做法:文中指的representation size(即可理解为feature map的长宽大小)在网络前向传播中要随着网络层的加深而逐渐地减小。
    • 原因:从理论上来说,降维会导致各通道间的相关性信息(如相关的稀疏特征)丢失,仅反映了致密的嵌入信息。(致密和稀疏是相对的) 如输入一只猫的图像,有猫脸特征、猫尾巴特征、猫胡子、猫耳朵、人脸特征是5种稀疏的特征,进行压缩即特征融合后,可能变为2种或3种致密的特征信息。
    • 思考:为何特别是网络的浅层? 因为在网络的浅层丢失的原图信息还不是很多,仍然保留信息的稀疏性。如果在浅层就进行过度地压缩和降维,会对后面提取特征等工作是有负面影响的。
  • 原则二(较难理解):

    • 原文:Higher dimensional representations are easier to process locally within a network. Increasing the activations per tile in a convolutional network allows for more disentangled features. The resulting networks will train faster.
    • 实际上指的是,在最后分类层之前,用该模块扩展特征维度,生成高维稀疏特征;即增加特征的维度,能够加快训练速度,更容易收敛。(特征越多,收敛越快;相互独立的特征越多,输入的信息分解就越彻底)
    • 结合原本Figure 7 进行理解:2 AI论文笔记--Rethinking the Inception Architecture for Computer Vision
  • 原则三: 在低维特征中进行空间信息的聚合(Spatial aggregation,文中主要指大卷积核卷积)不会对模型的表征造成大的影响;

    • 文中举例: 在3x3和5x5大卷积核卷积之前使用1x1的卷积核进行降维,实际上是对1*1卷积的使用进行了说明,并不会太影响representation;
    • 作者推断: 邻边单元的强相关性在降维过程中信息损失很少,所以在3x3和5x5卷积之前用1x1卷积进行降维是可行的;
    • 举例: 每一层输出的feature map上每一个相邻的像素,它们的感受野是相邻且有一部分是重合的,即它们高度相关;若将它们进行1x1卷积后,特征信息是可以得到保证,因为1x1卷积后的feature map是能够实现跨通道的信息交融。
  • 原则四: 设计网络的时候要考虑网络的深度(卷积层的层数)和宽度(每一层卷积核的个数)的均衡,才能最大化提高模型的性能;若要提升深度和宽度,应该让它们一起提升(increase in parallel);

3 Factorizing Convolutions with Large Filter Size (分解大卷积核的卷积)

  • 主要讲解优化Inception内部结构具体内容

    • 5x5的卷积可用2个3x3的卷积可以代替,它们的感受野都为5x5;
    • 将3x3卷积可分解为1x3和3x1两个不对称卷积(空间可分离卷积);2 AI论文笔记--Rethinking the Inception Architecture for Computer Vision
  • 同时指出n x n的卷积核可以用(1x n 卷积核+ n x 1卷积核)代替,但是这种不对称的卷积分解在网络前期效果并不好,在feature map大小为12-20的比较合适。2 AI论文笔记--Rethinking the Inception Architecture for Computer Vision

4 Efficient Grid Size Reduction(高效的下采样技巧)

  • 一般情况下,降维有如图两种方式,但都有比较大的缺点:
    • 方法一:先对feature map池化会导致表征瓶颈,信息量丢失很多;(池化->卷积)
    • 方法二:信息保留下了,但计算量比较大; (卷积->池化)2 AI论文笔记--Rethinking the Inception Architecture for Computer Vision
    • 计算量比较:同时以(d x d grid with 2filters, arrive at d/2 x d/2 with 2 filters )为例,如下图:
    • 2 AI论文笔记--Rethinking the Inception Architecture for Computer Vision
  • 文中建议的方法: 并行执行(卷积C+池化P),再进行feature map的堆叠
    2 AI论文笔记--Rethinking the Inception Architecture for Computer Vision
    TIPS:
  • 为何5X5卷积用3X3+3X3卷积核后,感受野仍然是5X5?

    关于感受野,不错的文章链接如下:
    https://blog.csdn.net/program_developer/article/details/80958716
    2 AI论文笔记--Rethinking the Inception Architecture for Computer Vision

上一篇:Django(22)Django执行SQL语句


下一篇:Open vSwitch系列之openflow版本兼容