即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结

即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结

  • 前言
  • 为什么要做这个研究
  • 文章主要内容与贡献
    • 提出了一种新颖的Ghost模块,可以通过廉价的操作生成更多的特征图。基于一组固有特征图,应用了一系列成本低廉的线性变换来生成许多可以完全揭示固有特征信息的重影特征图
    • 可以将提出的Ghost模块用作即插即用组件,以升级现有的卷积神经网络。设计Ghost瓶颈来堆叠Ghost模块,然后可以轻松地建立轻量级的Ghost Net
    • 在基准上进行的实验表明,提出的Ghost模块是基线模型中卷积层的令人印象深刻的替代方案,并且在ImageNet ILSVRC-2012分类数据集上具有类似的计算成本,作者的GhostNet可以实现比MobileNetV3更高的识别性能(例如75.7%的top-1精度)

前言

这是一些对于论文《GhostNet: More Features from Cheap Operations》的简单的读后总结,首先先奉上该文章的下载超链接:点击这里下载论文地址1,github网址,作者翻译论文。

这篇文章是由华为的Noah’s Ark Lab, Huawei Technologies的Kai Han、Yunhe Wang、 Qi Tian和Chunjing Xu,北京大学的Jianyuan Guo和School of Computer Science, Faculty of Engineering, University of Sydney的Chang Xu合作完成的。该文章于被CVPR 2020接收。

为什么要做这个研究

由于有限的内存和计算资源,很难在嵌入式设备上部署卷积神经网络(CNN)。特征映射中的冗余是那些成功的CNN的重要特征,但很少在神经体系结构设计中进行研究。

文章主要内容与贡献

该文章的贡献为:

  1. 提出了一种新颖的Ghost模块,可以通过廉价的操作生成更多的特征图。基于一组固有特征图,应用了一系列成本低廉的线性变换来生成许多可以完全揭示固有特征信息的重影特征图;
  2. 可以将提出的Ghost模块用作即插即用组件,以升级现有的卷积神经网络。设计Ghost瓶颈来堆叠Ghost模块,然后可以轻松地建立轻量级的Ghost Net;
  3. 在基准上进行的实验表明,提出的Ghost模块是基线模型中卷积层的令人印象深刻的替代方案,并且在ImageNet ILSVRC-2012分类数据集上具有类似的计算成本,作者的GhostNet可以实现比MobileNetV3更高的识别性能(例如75.7%的top-1精度)。

提出了一种新颖的Ghost模块,可以通过廉价的操作生成更多的特征图。基于一组固有特征图,应用了一系列成本低廉的线性变换来生成许多可以完全揭示固有特征信息的重影特征图

如下图所示,输出的特征图中会有很多类似或者冗余的特征,这类冗余特征可以基于某个基础特征通过廉价的线性变换获得,下图的扳手是线性操作,箭头起点为基础特征,终点为冗余或相似特征。

下图是卷积层和提出的Ghost模块的示例,用于输出相同数量的特征图。 Φ表示便宜的操作。
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第1张图片
通过Ghost模块可以轻松增多特征图的输出。

设定每个基础特征对应s个冗余特征,那么只需要输出n/s个基础特征即可,然后对每个基础特征执行线性变换(论文采取d*d的卷积核进行运算),生成对应的冗余/相似特征即可,这样即可降低网络本身的FLOPs。相比于原有方式,FLOPs是原来的1/s。
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第2张图片

可以将提出的Ghost模块用作即插即用组件,以升级现有的卷积神经网络。设计Ghost瓶颈来堆叠Ghost模块,然后可以轻松地建立轻量级的Ghost Net

GhostNet中的主要有两类bottleneck,下图是Ghost bottleneck层,左图和右图的Stride分别为1和2。
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第3张图片
Ghost bottleneck 1结构类似于ResNet,其中集成了多个卷积层和shortcut,Ghost bottleneck1主要由两个堆叠的Ghost模块组成。第一个Ghost模块用作扩展层,增加了通道数。Ghost bottleneck2通过深度可分离卷积减少通道数, 然后在这两个Ghost模块使用shortcut连接输入和输出。

下图是GhostNet的总体架构,G-bneck表示Ghostbottleneck,#exp表示扩展大小, #out表示输出通道数, SE表示是否使用SE模块。
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第4张图片

在基准上进行的实验表明,提出的Ghost模块是基线模型中卷积层的令人印象深刻的替代方案,并且在ImageNet ILSVRC-2012分类数据集上具有类似的计算成本,作者的GhostNet可以实现比MobileNetV3更高的识别性能(例如75.7%的top-1精度)

为了验证所提出的Ghost模块和GhostNet架构的有效性,在几个基准视觉数据集上进行了实验,包括CIFAR-10、ImageNet ILSVRC 2012数据集和MS-COCO对象检测基准。
下面两个表是ablation study,最终网络中的d=3,s=2。
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第5张图片
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第6张图片

下表是比较在CIFAR-10上压缩VGG-16和ResNet-56的最新方法。 -表示没有可用的报告结果。
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第7张图片
可以看出,在VGG-16上使用Ghost模块时将计算量压缩为一半后还能超越原始模型的精度。在ResNet-56上虽然不能超过原始模型但是也比其他压缩方法好。

下表是比较在ImageNet数据集上压缩ResNet-50的最新方法。
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第8张图片
在ResNet-50上使用Ghost模块时将计算量压缩为一半后超越了原始模型的精度。在压缩为1/4的计算量后准确度损失极小。

接下来的两个图是准确率和计算量的对比图:
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第9张图片
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第10张图片

下表是比较最新的小型网络在ImageNet数据集上的分类精度,权重数和FLOP数。
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第11张图片

最后是在MS COCO上的结果:
即插即用、压缩加速模型的Ghost模块《GhostNet: More Features from Cheap Operations》读后总结_第12张图片

你可能感兴趣的:(卷积神经网络,神经网络,网络压缩加速,神经网络,深度学习,网络压缩,网络加速,CVPR)