Xception论文阅读笔记

论文下载

Abstract

Inception模块是位于普通卷积和深度可分卷积(Depthwise
Separable)中间的一种操作,深度可分卷积可以理解成Inception模块的极端化,Xception在ImageNet上的表现略好于InceptionV3,但在一个更大的数据集上Xception表现的要比InceptionV3好的多,Xception和InceptionV3的参数量差不多所以说明Xception的提升并不是因为参数量的增加而是因为参数的使用率得到了提升。

1. Introduction

这些卷积模型从 LeNet (用卷积来提取图像特征, MaxPooling来对空间信息进行下取样)到 AlexNet
(卷积和池化交替进行,能够在每一个空间尺度提取充分的特征)然后到更深的 VGG -> Inception(GoogLeNet)
-> _V2_ -> _V3_ -> Inception-ResNet -> Xception

Inception模型不再是像VGG模型那样的卷积和池化的简单堆叠而是由下图的Inception模块堆叠而成:

fig 1

Inception模型虽然使用较少的参数但是可以学习到非常多的表示(repersentation),那么模型是怎么工作的?它跟普通卷积又有什么区别呢?Inception之后又该如何设计网络呢?

1.1 The Inception hypothesis

把图片分为两个空间维度(长,宽)和一个channel维度,卷集核的任务就是对跨通道的联系和空间的联系进行不断地映射,Inception背后的思想就是独立的查看跨通道的联系和空间的联系,假设跨通道的联系和空间的联系是充分可分离的最好不要同时进行映射。

首先我们将Inception模块简化

fig2

然后再进行一波操作

fig3

观察之后我们就发现两个问题:怎么划分channel才合理呢?是不是好有比Inception假设更强的假设

1.2 The continumm between convolutions and separable convolutions

再来一个极端版本

fig4

首先进行1x1的卷积来映射跨channel的联系然后将输出的每一个channel都进行3x3的卷积来映射跨空间的关系,这个极端的形式就差不多是depthwise
separable convolution了,但是与xception还是有所不同的。

  • Xception
    • 先进行1x1卷积
    • 再对每个channel进行3x3卷积后 concat
    • 每个操作都跟着一个relu激活函数
  • depthwise separable convolution

    • 对每个channel进行3x3的卷积后 concat
    • 将concat进行1x1的卷积
    • 无激活函数

    3. The Xception architecture

fig5

文章作者:Hanjun Liu

最后更新:2018年10月07日 17:10:20

生活不易,求打赏~