论文解读PydMobileNet: Improved Version of MobileNets with Pyramid Depthwise Separable Convolution

本篇论文采用多个(金字塔)depthwise convolution来代替传统的depthwise convolution。

作者是受到Inception模块的启发而得到的灵感。

那么既然如此,首先就来看看原始的native Inception模块的结构以及其优缺点。

native Inception 模块如下所示:

Inception module 的提出主要考虑多个不同 size 的卷积核能够增强网络的适应力,分别使用1*1、3*3、5*5卷积核,同时加入3*3 max pooling。

但是这种 naive 结构存在着问题:每一层 Inception module 的 filters 参数量为所有分支上的总数和,多层 Inception 最终将导致 model 的参数数量庞大,对计算资源有更大的依赖。

在 NIN 模型中与1*1卷积层等效的 MLPConv 既能跨通道组织信息,提高网络的表达能力,同时可以对输出有效进行降维,因此文章提出了Inception module with dimension reduction,在不损失模型特征表示能力的前提下,尽量减少 filters 的数量,达到降低模型复杂度的目的:

请思考下上图中1*1 convolutions能否换个位置存放?

作者将这种结构运用到mobilenet中,取代原始的3*3 dw convolution 

以下是原始的残差网络带有3*3dw convolution的结构。

作者将其中的3*3卷积换成Inception 结构后,结构图如下所示:

其中的"+"表示addition,当然特征的融合也可以采用*(Concatenation)

最后结果显示,在相同的情况下,作者提出的网络结构参数更小,error rate 更低。

思考:这种方法能不能用到其他的网络结构中去呢?

期待作者开源其pretrained model。

发布了61 篇原创文章 · 获赞 12 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/liqiming100/article/details/84575466