轻量化模型系列--GhostNet:廉价操作生成更多特征

简介: 由于内存和计算资源有限,在嵌入式设备上部署卷积神经网络 (CNN) 很困难。特征图中的冗余是那些成功的 CNN 的一个重要特征,但在神经架构设计中很少被研究

由于内存和计算资源有限,在嵌入式设备上部署卷积神经网络 (CNN) 很困难。特征图中的冗余是那些成功的 CNN 的一个重要特征,但在神经架构设计中很少被研究。

论文提出了一种新颖的 Ghost 模块,可以从廉价操作中生成更多的特征图。提出的 Ghost 模块可以作为即插即用的组件来升级现有的卷积神经网络。堆叠Ghost Module建立了轻量级的 GhostNet。


GhostNet 可以实现比 MobileNetV3 更高的识别性能(例如 75.7% 的 top-1 准确率),并且在 ImageNet ILSVRC-2012 上具有相似的计算成本。


出发点


多年来,已经提出了一系列方法来研究紧凑型深度神经网络,例如网络剪枝、低位量化、知识蒸馏等。网络剪枝修剪神经网络中不重要的权重、利用正则化来修剪过滤器以获得高效的 CNN; 低位量化将权重和激活量化为 1 位数据,以实现大的压缩和加速比;知识蒸馏,将知识边缘从较大的模型转移到较小的模型。


然而,这些方法的性能通常受预训练的神经网络作为其基线的上限。

 

778a79c26aae12c42f3a372a2731447c.png


训练好的深度神经网络的特征图中的丰富甚至冗余信息通常可以保证对输入数据的全面理解。例如,上图展示了 ResNet-50 生成的输入图像的一些特征图,并且存在许多相似的特征图对,就像彼此的幽灵。特征图中的冗余可能是成功的深度神经网络的一个重要特征。我们倾向于采用它们,而不是避免冗余的特征图,但以一种具有成本低的方式。

这里补充一句:一个训好的正常大小的网络中,存在大量的冗余特征图,模型剪枝(或模型压缩)、正则化属于减少冗余特征图的方式,而这篇论文认为这些冗余信息会对于正确识别或检测具有重要的作用。


推荐阅读《我们真的需要模型压缩吗》更好理解上面这段话。

 

 

主要贡献


 

引入了一个新的 Ghost 模块,通过使用更少的参数来生成更多的特征。 具体来说,深度神经网络中的一个普通卷积层会被分成两部分。第一部分涉及普通卷积,但它们的总数将受到严格控制。给定第一部分的内在特征图,然后应用一系列简单的线性操作来生成更多的特征图。在不改变输出特征图的大小的情况下,与普通卷积神经网络相比,这个 Ghost 模块所需的总体参数数量和计算复杂度有所降低。


基于 Ghost 模块,建立了一个高效的神经架构,即 GhostNet。 首先替换基准神经架构中的原始卷积层以证明 Ghost 模块的有效性,然后验证 GhostNets 在几个基准视觉数据集上的优越性。


实验结果表明,所提出的 Ghost 模块能够降低通用卷积层的计算成本,同时保持相似的识别性能,并且 GhostNets 可以在各种任务上超越SOTA高效深度模型,如 MobileNetV3 移动设备上的快速推理。

 

Methods


Ghost module

d258e1b506305e584d7d6a2c7921e236.png

d258e1b506305e584d7d6a2c7921e236.png

如上图所示,Ghost module先通过正常卷积,将input通道数减少,再通过一个depthwise卷积和identity(恒等变换)。


1. 前面的卷积既可以使用1x1卷积,也可以使用正常的3x3或5x5卷积。


2. 这里的Φ即为cheap operation,既可以是depthwise卷积,也可以是其它方式的卷积,例如分组卷积。这部分的作用就是生成了相似特征图。也就是前面说的,用成本更低的方式,保留了那些冗余信息。


3. 恒等映射与 Ghost 模块中的线性变换并行以保留内在特征映射。

 

复杂度分析


假设我们输入特征图的尺寸是h*w*c,输出特征图的尺寸是h’*w’*n,卷积核大小为k*k。

在cheap operation变换中,我们假设特征图的channel是m,变换的数量是s,最终得到的新的特征图的数量是n,那么我们可以得到等式:


n = m ∗ s


由于Ghost的变换过程中最后存在一个恒等变换(Identity),所以实际有效的变换数量是s-1,所以上式可以得到如下公式:


m ∗ ( s − 1 ) = n / s ∗ ( s − 1 )


所以,理论的速度比为:


3595b83dc2272256c75d1add11cc9af1.png

理论的压缩比为:

82882925fccd4c2114897f080d4d4657.png

其中,s远小于c。

c29f01d9ce25276402ae8a0d0fd2ad9f.png

470ed27ea02d6499fd603a6f85375d6b.png

Conclusion

9d8cf18bdcce74eb95818ac96e15599b.png

717aed4806023ca657e8757b20c222a3.png

21bc4c0bb88e05d7b599e5f8981e5c01.png

相关文章
|
2月前
|
机器学习/深度学习 存储 算法
【轻量化网络】概述网络进行轻量化处理中的:剪枝、蒸馏、量化
【轻量化网络】概述网络进行轻量化处理中的:剪枝、蒸馏、量化
57 0
|
2月前
|
物联网 网络架构
PHATGOOSE:使用LoRA Experts创建低成本混合专家模型实现零样本泛化
这篇2月的新论文介绍了Post-Hoc Adaptive Tokenwise Gating Over an Ocean of Specialized Experts (PHATGOOSE),这是一种通过利用一组专门的PEFT模块(如LoRA)实现零样本泛化的新方法
26 0
|
4天前
|
机器学习/深度学习 算法 atlas
RAG 2.0架构详解:构建端到端检索增强生成系统
RAG(检索增强生成)旨在通过提供额外上下文帮助大型语言模型(LLM)生成更精准的回答。现有的RAG系统由独立组件构成,效率不高。RAG 2.0提出了一种预训练、微调和对齐所有组件的集成方法,通过双重反向传播最大化性能。文章探讨了不同的检索策略,如TF-IDF、BM25和密集检索,并介绍了如SPLADE、DRAGON等先进算法。目前的挑战包括创建可训练的检索器和优化检索-生成流程。研究表明,端到端训练的RAG可能提供最佳性能,但资源需求高。未来研究需关注检索器的上下文化和与LLM的协同优化。
24 1
|
2月前
|
机器学习/深度学习 存储 编解码
沈春华团队最新 | SegViT v2对SegViT进行全面升级,让基于ViT的分割模型更轻更强
沈春华团队最新 | SegViT v2对SegViT进行全面升级,让基于ViT的分割模型更轻更强
39 0
|
11月前
|
5G
带你读《5G大规模天线增强技术》——2.4.6 大尺度参数计算
带你读《5G大规模天线增强技术》——2.4.6 大尺度参数计算
|
8月前
|
人工智能 缓存 并行计算
终极「揭秘」:GPT-4模型架构、训练成本、数据集信息都被扒出来了
终极「揭秘」:GPT-4模型架构、训练成本、数据集信息都被扒出来了
368 0
|
9月前
|
机器学习/深度学习
结合亲和力提高了 28.7 倍,基于端到端贝叶斯语言模型的方法设计大型、多样化的高亲和力抗体库
结合亲和力提高了 28.7 倍,基于端到端贝叶斯语言模型的方法设计大型、多样化的高亲和力抗体库
|
11月前
|
5G
带你读《5G大规模天线增强技术》——2.4.8 小尺度计算增强(2)
带你读《5G大规模天线增强技术》——2.4.8 小尺度计算增强(2)
带你读《5G大规模天线增强技术》——2.4.8 小尺度计算增强(2)
|
11月前
|
5G 定位技术 Windows
带你读《5G大规模天线增强技术》——2.4.8 小尺度计算增强(1)
带你读《5G大规模天线增强技术》——2.4.8 小尺度计算增强(1)
|
11月前
|
5G
带你读《5G大规模天线增强技术》——2.4.7 小尺度参数计算
带你读《5G大规模天线增强技术》——2.4.7 小尺度参数计算