轻量化网络模块GhostNet-More Features from Cheap Operations

介绍

本文是CVPR2020最新出炉的文章,文章主要介绍了新型的轻量化模块——Ghost模块。Ghost模块的核心思想是基于一组固有特征图,应用了一系列成本低廉的线性变换,生成了许多可以充分揭示潜在固有特征信息的幻影(Ghost)特征图。提出的Ghost模块可以作为即插即用组件用于升级现有的卷积神经网络。

      作者指出在训练好的神经网络中包含大量的甚至是冗余的信息来确保对于输入数据的理解,例如图1中展示的是输入图像经ResNet50产生的特征图,里面有许多成对的相似特征图,像是彼此的幻影。冗余的特征信息是成功的深度神经网络的重要特征, 除了避免使用多余的特征图之外,作者倾向于以经济高效的方式将其包含在里面。


Fig.1 特征图可视化

        Ghost模块将普通的卷积层分解为两个部分,第一部分包含了正常的卷积,但是卷积的数量会被严格控制。给在定第一部分的固有特征图之后,然后应用一系列简单的线性运算以生成更多特征图。与普通卷积神经网络相比,在不更改输出特征图大小的情况下,该Ghost模块中所需的参数总数和计算复杂度均已降低。在Ghost模块的基础上,作者构建了GhostNet。作者首先在基准神经体系结构中替换原始的卷积层,以证明Ghost模块的有效性,然后在多个基准视觉数据集上验证GhostNet的优越性。 实验结果表明,文章所提出的Ghost模块能够在保持相似识别性能的同时降低通用卷积层的计算成本,并且GhostNets可以在各种任务上超过MobileNetV3 [16]等先进的有效深度模型。 在移动设备上实现快速的前向推理。


模型介绍

Ghost模块


Fig.2 Ghost模块

作者首先对于传统的卷积进行了计算量的分析,传统的卷积中,设输入特征图为CxHxW,其中c代表通道数量,H和W分别代表输入特征图的高和宽,卷积核的尺寸为CxkxkxN,其中k指的是卷积核的大小,而N指的是输出特征图的通道数,则可以得到输出的特征图尺寸为:NxH'xW'。总的计算量为H'xW' x k^2 x N x C。下面来着重讲一下Ghost模块是如何进行卷积的。首先,输入的特征图也是CxHxW,Ghost模块先利用通道数是m的正常卷积对特征图进行卷积,此时的特征图的尺寸是H‘ x W' x m。接下来就是将这个特征图的m个通道分别进行线性的映射,采用的也是卷积。这里有一个非常重要的参数s,这个s代表的是这m个通道分别被线性映射几次,作者指出这里的线性映射是(s-1)次,为什么是(s-1)次呢,作者这里是将m个通道在堆叠到映射之后的特征图上,如图2所示。由于这里对于m个通道进行分别的卷积,所以使得Ghost模块中的线性映射具有很大的多样性。

        那如何计算Ghost模块和普通卷积之间的计算量的区别呢,如图3所示。


Fig.3

图3中的上下两个公式代表的是计算量的压缩比例和参数量的压缩比例,如图可以看出,Ghost模块相较于普通的卷积,压缩比例都是s,这个s就是我们前面提到的超参数。,而d代表的是对m个通道进行分别线性映射时的核的大小。

Ghost bottleneck


Fig.4 Ghost bottleneck

        在Ghost模块的基础上,作者搭建了Ghost bottleneck来建立轻量化的模型。如图4所示。第一个Ghost模块用作扩展层,增加了通道数。作者将输出通道数与输入通道数之比称为扩展比。第二个Ghost模块减少了通道数,然后与输入进行相加。BN和Relu应用在了每个网络模块后,除了第二个Ghost模块(参考了Mobilenetv2的建议)。上述是针对于步长为1的情况,对于步长为2的情况,在两个Ghost模块之间插入了stride = 2的深度卷积。 在实践中,Gh为了提高效率,两个Ghost模块间插入的是点卷积。

宽度乘数

        尽管原文中表1(原文是表7,不知道是不是作者笔误)提供的GhostNet网络已经能够提供一个低延时和有准确率保证的网络,但是某些场景下,应该需要更小更快或者是更高准确率的网络,为了使网络适应这些情况,作者设计了一个alpha因子,称作宽度乘数。简单地在每一层上均匀地将因子α乘以通道数,用来改变整个网络的宽度。宽度乘数可以控制模型的大小,并且以α的平方的比例来减少计算量。通常小的α会有低的延迟和低的准确率,反之亦然。

实验结果

        作者首先用建议的Ghost模块替换原始的卷积层,以验证其有效性。 然后,将在图像分类和对象检测基准上进一步测试使用新模块构建的GhostNet架构。

        作者首先进行实验来观察原始特征图和生成的ghost特征图之间的重建误差,以图一中的红、绿、蓝三对来举例,特征是经过ResNet50的第一个残差块提取得到的。将左侧的特征作为输入,将另一个作为输出,作者利用一个小的深度卷积滤波器来学习映射,即它们之间的线性运算Φ。 卷积滤波器d的大小在1到7的范围内,每对具有不同d的MSE(均方误差)值如图5所示。在表2中可以发现,所有MSE值都非常小,这表明在深度神经网络中的特征图之间存在很强的相关性,并且这些冗余特征图可以从多个固有特征图生成。除了上述实验中使用的卷积之外,作者指出还可以探索仿射变换和小波变换等其他低成本线性运算来构造Ghost模块。但是卷积是当前硬件已经很好地支持的一种有效操作,它可以覆盖许多广泛使用的线性操作,例如平滑,模糊,运动等。此外,尽管还可以通过学习来获得每个线性运算Φ中滤波器的大小,但是不规则模块会降低计算单元(例如CPU和GPU)的效率。因此,作者建议让Ghost模块中的d为固定值。


Fig.5


Fig.6

超参数分析

        Ghost模块有两个超参数,分别是上面说的s,用来产生m=n/s固有特征图和线性映射中的卷积核dxd的大小。这两个参数的影响,作者是在VGG16的基础上进行实验的。首先固定s=2,然后测试d={1,3,5,7},图6表3的结果是网络在CIFAR-10上的表现,可以看出d=3的表现最好,这是因为1x1的卷积核无法在特征图上引入空间信息,而d为5或者是7导致了过拟合核更大的计算量,因此,作者采取d=3来进行接下来的有效性和效率的实验。接下来是固定d=3,然后测试s={2,3,4,5}。实际上,s直接关系到计算量和网络的表现,因为大的s导致了更大的压缩和加速比例(图3中的公式4,5)图6表4中的结果显示,当增加s,无论是速度还是准确率都出现下降,当s为2时,代表着VGG16被压缩了两倍,作者提出的方法表现比VGG16还要好一点,体现出作者的Ghost模块的优越性。

与SOTA对比

        作者将VGG16和ResNet56与SOTA的压缩模型在CIFAR10数据集上进行对比,作者的模型可以在达到更高的准确率的同时,减少网络的推理速度。结果展示在原文中的表5。

特征图可视化

        尽管生成的特征图都是基于同一个特征图产生的,但是它们之间确实有很大的不同,如图7所示。这意味着生成的特征更加的灵活多变,可以满足特定任务的需求。(这里可以看出Ghost其实使得同一个特征图中不同通道包含了不同的特征信息,增强了模型的表现力)。

Fig.7 特征图展示

ImageNet 上的分类表现


Fig.7 IimageNet 数据集表现

作者按照FLOPs的数量级将图7中的表格分为了四类,例如~50,~150等。从结果中我们可以看到,通常较大的FLOP在这些小型网络中会导致更高的准确性,这表明了它们的有效性。并且GhostNet在各种计算复杂度级别上始终优于其他的对比网络,因为GhostNet在利用计算资源生成特征图方面更加有效。 

目标检测


Fig.8 MS COCO数据集上目标检测结果

        为了进一步评估GhostNet的泛化能力,作者在MS COCO数据集上进行了目标检测实验。 作者将拆分出来的trainval35k作为训练数据,以mAP作为评价的指标。作者采用了 具有特征金字塔网络(FPN)的两阶段Faster R-CNN 和一阶段的RetinaNet 来作为实验的框架,而GhostNet被用来作为特征提取器。 作者使用的预训练模型是在ImageNet上使用SGD训练12个epochs的模型,将输入图像的大小调整为800的短边和不超过1333的长边。 图8显示了检测结果,其中FLOP是使用224×224尺寸的输入图像计算出来的。实验结果表明GhostNet大大降低了计算成本,无论在RetinaNet还是在Faster R-CNN框架上,都可以达到与MobileNetV2和MobileNetV3相同水准的mAP。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,546评论 6 507
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,224评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,911评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,737评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,753评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,598评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,338评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,249评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,696评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,888评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,013评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,731评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,348评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,929评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,048评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,203评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,960评论 2 355

推荐阅读更多精彩内容