论文网址:https://arxiv.org/pdf/1610.02357.pdf
Xception的主要工作是解释常规卷积(regular convolution)如何从Inception模块过渡到可分离卷积(depthwise separable convolution)。
Xception从结构入手,分析Inception module和传统卷积不同之处,再将这种不同之处不断放大,得到了Extreme版的Inception module。从中分析得到这样的结论:Inception module是介于传统卷积和深度向分离卷积之间的一种结构。
(深度可分离卷积块由两个部分组成,分别是深度可分离卷积和1x1普通卷积,深度可分离卷积的卷积核大小一般是3x3的,便于理解的话我们可以把它当作是特征提取,1x1的普通卷积可以完成通道数的调整。)
figure2:Inception v3的基本单元inception module将输入特征图输给几个支路并行提取特征,每个支路经过1×1卷积在通道维度提取信息,得到的特征图的通道数都比输入特征的通道数小少,再通过3x3卷积在空间维度提取特征,最后再将特征图连接起来。简化的Inception module如下图所示。
figure3:figure2中1x1卷积将输入特征的通道数变小,实际上也可以认为3个1x1卷积将输入特征图通道分割成了三个互不交叉的部分,这种划分方法等价于将3个1x1卷积合并成一个,再将1x1卷积输出进行划分,此思想如下图所示。
figure4:由此看出,Inception module实际上也将卷积操作的空间操作和通道操作拆开,分别进行操作,但是上述拆解不够彻底3x3卷积的输入特征图的通道数仍不为1,接下来论文给每个通道单独配一个3x3卷积,彻底实现了通道向和空间向的解耦,得到了一个极端版本的Inception module(extreme version)
可以看出将上图每个支路中3x3几乎就是深度向卷积(depthwise separable convolution),唯一的不同在于1x1卷积与3x3卷积的顺序不同,但实际上,顺序是可以忽略的,因为在深度神经网络中卷积层相互堆叠,局部的顺序并不重要。
可以认为 Xception和Mobilenet主要区别在于深度可分离卷积顺序
参考:
一、https://www.jiqizhixin.com/articles/2017-08-19-4(读懂 ResNet、Inception 和 Xception 三大变革性架构)
二、https://blog.csdn.net/sinat_38799649/article/details/98943944?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522160537025419725225048063%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=160537025419725225048063&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_v2~rank_v28-1-98943944.pc_first_rank_v2_rank_v28&utm_term=xception&spm=1018.2118.3001.4449(Xception网络论文解读)