YOLOv5改进 | Conv篇 | 利用轻量化PartialConv提出一种全新的结构CSPPC (参数量下降约42W)

简介: YOLOv5改进 | Conv篇 | 利用轻量化PartialConv提出一种全新的结构CSPPC (参数量下降约42W)

一、本文介绍

本文给大家带来的改进机制是由我独家研制的,我结合了DualConv的思想并根据PartialConv提出了一种全新的结构CSPPC用来替换网络中的C2f,将其替换我们网络(V5n)中的C3参数量后直接下降约42W,计算量GFLOPs降低至3.3GFLOPs同时,其中的PartialConv作为一种具有高速推理的Conv,其对于网络的速度提升也是非常的有效的,本文的网络结构大家只要使用上,作为一种轻量化的模块来使用,可以说是轻量化中的王者,同时该结构在我的数据上还伴随着一定幅度涨点约一个点,同时本文的结构为我独家创新全网无第二份,非常适合大家用来发表论文!

欢迎大家订阅我的专栏一起学习YOLO!

image.png


专栏目录:YOLOv5改进有效涨点目录 | 包含卷积、主干、检测头、注意力机制、Neck上百种创新机制
专栏回顾:YOLOv5改进专栏——持续复现各种顶会内容——内含100+创新

二、PConv卷积原理

image.png


2.1 PConv卷积的基本原理

PConv(部分卷积)的基本原理是利用特征图的冗余,从而减少计算和内存访问。具体来说,PConv 只在输入通道的一部分上应用常规卷积进行空间特征提取,而保留剩余通道不变。这种设计的优势在于:

1. 减少计算复杂度:PConv 通过在较少的通道上进行计算,降低了浮点操作(FLOPs)的数量。例如,如果部分率设置为 1/4,则PConv的计算量只有常规卷积的 1/16。

2. 降低内存访问:与常规卷积相比,PConv减少了内存访问量,这对于输入/输出(I/O)受限的设备尤其有益。

3. 保持特征信息流:尽管只对输入通道的一部分进行计算,但保留的通道在后续的逐点卷积(PWConv)层中仍然有用,允许特征信息在所有通道中流动。

下图为大家展示了我们提出的部分卷积(PConv)的概念。它通过仅在少数输入通道上应用滤波器,同时保留其他通道不变,从而实现快速高效的运算。


image.png

与常规卷积相比,PConv降低了FLOPs,同时比深度/分组卷积具有更高的FLOPs。这种方法提升了运算效率,因为它减少了必须执行的计算量,并且减少了内存访问。

图中(a)展示了常规卷积,(b)展示了深度/分组卷积,而(c)则展示了我们的部分卷积方法。在PConv中,一部分通道直接通过身份操作传递,而不进行卷积处理。


2.2 特征图冗余

特征图冗余指的是在卷积神经网络的特征图(也称为激活图)中,不同通道间存在大量相似或重复的信息。在许多情况下,特征图的某些通道可能会包含与其他通道高度相似的特征,这意味着在进行网络的前向传播时,这部分信息的多次处理并没有提供额外的有用信息,反而增加了计算量和内存访问的开销。

在实际应用中,这种冗余性可能会导致计算资源的浪费,因为神经网络会在所有通道上执行卷积运算,包括那些冗余或者不会对网络性能产生显著影响的通道。为了解决这个问题,可以通过各种方法来降低这种冗余,例如:

1. 通道剪枝:通过分析通道的重要性并移除那些对最终性能影响不大的通道来减少冗余。

2. 组卷积:将输入特征图分成多个组,每个组独立进行卷积运算,可以减少参数数量和计算量。

3. 部分卷积(PConv):正如论文中提出的,PConv只在输入通道的一部分上应用卷积,减少了计算上的冗余和内存访问,同时仍能有效提取空间特征。

目录
相关文章
|
2月前
|
算法 PyTorch 算法框架/工具
Pytorch学习笔记(九):Pytorch模型的FLOPs、模型参数量等信息输出(torchstat、thop、ptflops、torchsummary)
本文介绍了如何使用torchstat、thop、ptflops和torchsummary等工具来计算Pytorch模型的FLOPs、模型参数量等信息。
363 2
|
3月前
英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强
【9月更文挑战第10天】《通过剪枝和知识蒸馏实现紧凑型语言模型》由英伟达研究人员撰写,介绍了一种创新方法,通过剪枝和知识蒸馏技术将大型语言模型参数数量减半,同时保持甚至提升性能。该方法首先利用剪枝技术去除冗余参数,再通过知识蒸馏从更大模型转移知识以优化性能。实验结果显示,该方法能显著减少模型参数并提升性能,但可能需大量计算资源且效果因模型和任务而异。
85 8
|
7天前
|
人工智能 物联网 C语言
SVDQuant:MIT 推出的扩散模型后训练的量化技术,能够将模型的权重和激活值量化至4位,减少内存占用并加速推理过程
SVDQuant是由MIT研究团队推出的扩散模型后训练量化技术,通过将模型的权重和激活值量化至4位,显著减少了内存占用并加速了推理过程。该技术引入了高精度的低秩分支来吸收量化过程中的异常值,支持多种架构,并能无缝集成低秩适配器(LoRAs),为资源受限设备上的大型扩散模型部署提供了有效的解决方案。
34 5
SVDQuant:MIT 推出的扩散模型后训练的量化技术,能够将模型的权重和激活值量化至4位,减少内存占用并加速推理过程
|
5月前
|
机器学习/深度学习 计算机视觉 异构计算
【YOLOv8改进 - Backbone主干】FasterNet:基于PConv(部分卷积)的神经网络,提升精度与速度,降低参数量。
【YOLOv8改进 - Backbone主干】FasterNet:基于PConv(部分卷积)的神经网络,提升精度与速度,降低参数量。
|
5月前
|
机器学习/深度学习 计算机视觉 网络架构
【YOLOv8改进- Backbone主干】YOLOv8 更换主干网络之 PP-LCNet,轻量级CPU卷积神经网络,降低参数量
YOLO目标检测专栏介绍了PP-LCNet,一种基于MKLDNN加速的轻量级CPU网络,提升了模型在多任务中的性能。PP-LCNet利用H-Swish、大核卷积、SE模块和全局平均池化后的全连接层,实现低延迟下的高准确性。代码和预训练模型可在PaddlePaddle的PaddleClas找到。文章提供了网络结构、核心代码及性能提升的详细信息。更多实战案例和YOLO改进见相关链接。
|
7月前
|
存储 机器学习/深度学习 自然语言处理
ICLR 2024:零成本增加模型容量:一种简单的低参数量微调策略
【2月更文挑战第23天】ICLR 2024:零成本增加模型容量:一种简单的低参数量微调策略
94 2
ICLR 2024:零成本增加模型容量:一种简单的低参数量微调策略
|
7月前
|
机器学习/深度学习
YOLOv5改进 | Conv篇 | 结合Dual思想利用HetConv创新一种全新轻量化结构CSPHet(参数量下降20W)
YOLOv5改进 | Conv篇 | 结合Dual思想利用HetConv创新一种全新轻量化结构CSPHet(参数量下降20W)
164 3
|
7月前
|
机器学习/深度学习 数据可视化 计算机视觉
YOLOv5改进 | Conv篇 | 利用DualConv二次创新C3提出一种轻量化结构(降低参数30W)
YOLOv5改进 | Conv篇 | 利用DualConv二次创新C3提出一种轻量化结构(降低参数30W)
403 1
|
7月前
|
机器学习/深度学习
YOLOv8改进 | Conv篇 | 利用轻量化PartialConv提出一种全新的结构CSPPC (参数量下降约100W)
YOLOv8改进 | Conv篇 | 利用轻量化PartialConv提出一种全新的结构CSPPC (参数量下降约100W)
1163 0
|
7月前
|
机器学习/深度学习
YOLOv8改进 | Conv篇 | 结合Dual思想利用HetConv创新一种全新轻量化结构CSPHet(参数量下降70W)
YOLOv8改进 | Conv篇 | 结合Dual思想利用HetConv创新一种全新轻量化结构CSPHet(参数量下降70W)
170 0
下一篇
DataWorks