072、GhostConv 替换 Neck 中标准卷积(位置二):参数量减半对 mAP 的影响分析

📅 2026/6/30 15:22:57
072、GhostConv 替换 Neck 中标准卷积(位置二):参数量减半对 mAP 的影响分析
072、GhostConv 替换 Neck 中标准卷积(位置二):参数量减半对 mAP 的影响分析一、从一次线上事故说起去年双十一大促前夜,我负责的工业质检模型在压测时突然爆显存——batch size从32降到8才能跑通。排查后发现,Neck部分的卷积层占了模型总参数量的43%。当时团队里有人提议直接砍掉一半通道,但测试mAP掉了2.7个点,被业务方怼了回来。后来翻到华为诺亚方舟的GhostNet论文,突然意识到:卷积核里其实藏着大量冗余特征图。用GhostConv替换Neck中的标准卷积,理论上参数量减半,但mAP损失能控制在0.5%以内——前提是选对替换位置。二、GhostConv 的核心逻辑(别被论文公式吓到)GhostConv的本质很简单:先用少量卷积生成“骨架特征”,再通过线性变换(比如3x3 depthwise卷积)低成本复制出“幽灵特征”。标准卷积输出256通道需要256个3x3卷积核,GhostConv可能只需要128个卷积核+128个线性变换,参数量直接腰斩。但有个坑:线性变换的复杂度不能超过主卷积。论文里用3x3 depthwise卷积做变换,如果主卷积本身就是3x3,那变换层反而可能增加计算量。所以实际替换时,我通常把主卷积的kernel size设成5x5或7x7,变换层用3x3 depthwise——这样参数量降得