一、拆分传统卷积的冗余计算

传统 3 × 3 标准卷积需同时处理 “空间特征提取” 与 “通道信息融合”,存在大量冗余计算。通过拆分、分组、降维等方式重构卷积单元,是结构轻量化的基础。

1. 深度可分离卷积:空间与通道计算拆分

将传统卷积拆分为 “深度卷积(空间提取)” 和 “逐点卷积(通道融合)” 两步,实现计算量的大幅削减:

  • 深度卷积:为每个输入通道分配 1 个专属 3 × 3 卷积核,仅处理空间维度特征(无跨通道交互),计算量为 H × W × C i n × 3 × 3 H \times W \times C_{in} \times 3 \times 3 H×W×Cin×3×3
  • 逐点卷积:用 1×1 卷积核融合所有通道的空间特征(不改变空间尺寸),计算量为 H × W × C i n × C o u t H \times W \times C_{in} \times C_{out} H×W×Cin×Cout

优势:以 C o u t C_{out} Cout 为例,计算量仅为传统 K × K K \times K K×K 卷积的 1 C o u t + 1 K 2 \Large \frac{1}{C_{out}} + \frac{1}{K^2} Cout1+K21

2. 分组卷积与通道混洗:减少通道间无效交互

传统卷积中所有输入通道共享卷积核,通道间存在冗余交互;分组卷积将输入通道分为 G 组,每组独立卷积后拼接,计算量直接降为传统卷积的 1 G \large \frac{1}{G} G1

关键优化:ShuffleNet 引入 “通道混洗(Channel Shuffle)”,卷积后将不同组的通道打乱重组,解决分组导致的 “通道隔离” 问题,保证跨组信息流通。

可看这个博客:重新思考神经网络架构设计1:分组卷积篇 - 知乎

3. 瓶颈模块:降维 - 提取特征 - 升维的高效范式

针对传统残差块参数量过大的问题,瓶颈模块通过 “1×1 降维 → 3×3 提取特征 → 1×1 升维” 的流程,在保持感受野不变的前提下削减参数。

升级优化:MobileNet V2 的 “线性瓶颈”—— 移除 1 × 1 升维后的 ReLU 激活,避免低维特征被破坏,精度提升 2 ~ 3%,成为轻量级模型标配。

二、多分支轻量化结构:优化特征融合效率

传统单分支网络存在 “计算集中、梯度消失” 问题,多分支结构通过并行轻量级子分支实现多尺度特征融合,同时控制整体计算量:

分支结构类型 核心设计思路 优势与案例
Inception 轻量变种 将 5 × 5 卷积拆分为两个 3 × 3 卷积,3 × 3 卷积拆分为 1 × 1 + 3 × 3,减少 40% 参数量 保留多尺度特征能力,用于 Inception-V3/V4、EfficientNet-Lite
ShuffleNet 多分支 1 × 1 卷积分支(通道降维)+ 3 × 3 深度卷积分支(空间特征)+ 通道混洗(跨组交互) 参数量仅为 MobileNet 的 1/2,适配物联网设备
RepVGG 重参数化分支 训练时用 “3 × 3 卷积 + 1 × 1 卷积 + 恒等映射” 多分支提升性能,推理时合并为单分支 3 × 3 卷积 推理速度提升 3 倍,精度接近 ResNet-50,用于工业质检、实时分类

三、池化与下采样优化:减少空间维度冗余

特征图空间尺寸( H × W H \times W H×W)直接影响计算量(与 H × W H \times W H×W 成正比),通过优化池化方式和下采样时机,可压缩空间尺寸并减少信息损失:

  • 步长卷积替代传统池化

    传统最大池化无参数学习能力,易丢失细节;用 “步长 = 2 的 3 × 3 卷积” 替代池化,既能实现空间尺寸减半,又能通过卷积学习特征,性能提升 5%-10%。

  • 延迟下采样保留小目标特征

    传统网络(如 VGG)早期快速下采样(前 2 层将 224 × 224 降至 56 × 56),导致小目标特征丢失;轻量级模型延迟下采样(如 YOLOv8-Nano、EfficientNet-Lite 前 4 层仅下采样 1 次),早期保留更大空间尺寸,小目标检测精度提升 10% 以上。

  • 全局平均池化(GAP)替代全连接层

    传统分类网络的全连接层参数量占比极高(如 VGG16 全连接层占 75%);GAP 直接将 H × W × C H \times W \times C H×W×C 特征图压缩为 1 × 1 × C 1 \times 1 \times C 1×1×C 量,参数量骤降为 0,同时避免过拟合。

四、动态结构与条件计算:按需分配计算资源

传统模型对所有输入样本使用相同结构,存在 “冗余计算”(简单样本无需复杂计算)。动态结构通过 “根据输入特征自适应调整网络深度 / 宽度”,实现 “按需计算”:

动态优化类型 核心逻辑
动态深度 插入 “分支选择器”,简单样本(如背景占比高的图像)仅激活浅层网络,复杂样本激活深层
动态宽度 配置 “窄 / 中 / 宽” 三种通道比例,轻量级分类器预测样本复杂度并选择对应宽度
条件计算模块 用 “门控单元”(如 Sigmoid 激活的 1×1 卷积)动态抑制冗余通道计算

五、轻量化注意力机制:少量计算换精度提升

传统注意力(如 Transformer 自注意力)计算量过大,轻量化注意力通过简化结构,在增加 < 1% 计算量的前提下精度提升 1%-5%:

注意力模块 核心优化思路 计算量优势与适用场景
SE-Net 轻量版 将原始 SE 的 “全连接层” 替换为 “1 × 1 卷积 + GAP”,减少参数交互 额外计算量 < 1%,用于图像分类、目标检测
CBAM-Lite 通道注意力用 1 × 1 卷积替代全连接,空间注意力用 3 × 3 深度卷积替代普通卷积 参数量减少 60%,速度提升 2 倍,用于移动端图像分割、小目标检测
ECA-Net 移除 SE 的通道压缩步骤,用 “自适应卷积核”(根据通道数动态调整尺寸)捕捉通道依赖 额外计算量可忽略,精度提升 2 ~ 3%,用于轻量级分类、实时检测

典型案例:MobileNet V3 结合 SE 注意力,ImageNet Top-1 精度达 75.2%;EfficientNet-Lite 用 ECA 注意力适配端侧推理。

六、神经架构搜索(NAS):自动生成轻量化网络

手动设计轻量化网络依赖经验,NAS 通过算法自动搜索 “模块类型、通道数、分支数量”,生成适配特定硬件的最优结构,是工业界主流方案

  • MobileNet V3(NAS + 人工优化

    Google 通过 NAS 搜索 “深度可分离卷积的通道数、h-swish 激活函数位置、瓶颈结构比例”,最终模型比 V2 精度提升 3.2%,延迟降低 15%。

  • EfficientNet-Lite(NAS + 复合缩放

    在 EfficientNet “深度 - 宽度 - 分辨率” 三维缩放基础上,NAS 搜索适合移动端的缩放系数(更小的宽度扩张比),参数量减少 50%,推理速度提升 3 倍。

  • FBNet(硬件感知 NAS

    传统 NAS 仅优化精度,FBNet 加入 “硬件延迟模型”(如手机 GPU 计算延迟),搜索过程中同时约束参数量和延迟,生成的模型在 iPhone 上比 MobileNet V2 快 2 倍,精度相当。

七、典型轻量化网络结构对比

上述技术的组合形成了主流轻量化网络,其核心设计与效果如下:

网络名称 核心结构设计 轻量化效果(ImageNet 分类) 适用场景
MobileNet V1 深度可分离卷积 + 宽度系数调节 参数量 4.2M(AlexNet 的 1/9),计算量 469M FLOPs 移动端基础分类、图像识别
MobileNet V3 线性瓶颈 + 轻量化 SE 注意力 + NAS 拓扑搜索 + h-swish 激活 参数量 2.9M,精度 75.2%(比 V2 提升 2%+) 端侧实时检测、语音识别
ShuffleNet V2 通道混洗 + 分组卷积 + 多分支结构 + 减少元素级操作 参数量 1.4M(MobileNet V1 的 1/3),计算量 140M FLOPs 物联网设备、低功耗嵌入式系统
EfficientNet-Lite 复合缩放 + 深度可分离卷积 + ECA 注意力 + 延迟下采样 参数量 5.3M,精度 79.8%(接近 ResNet-50) 移动端高精度分类、小目标检测
RepVGG 训练多分支(3×3+1×1 + 恒等映射)+ 推理重参数化(单分支 3×3) 推理速度比 ResNet-50 快 3 倍,精度相当 工业质检、实时视频分析

八、结构轻量化的核心原则与实践建议

  • 降维优先:先通过瓶颈结构、1×1 卷积压缩通道数(计算量对通道数更敏感,平方关系),再优化空间维度(线性关系);
  • 高效模块替代:用深度可分离 / 分组卷积替代标准卷积,用 GAP 替代全连接,用动态结构替代固定结构,在相同感受野下降低计算成本;
  • 硬件适配:移动端 GPU 优先用 1×1/3×3 卷积(硬件指令优化),避免复杂分支;FPGA 适合对称分组卷积,稀疏卷积需硬件支持稀疏计算;
  • 精度与效率平衡:所有优化以 “精度损失≤5%” 为前提,通过消融实验(Ablation Study)验证冗余结构的必要性,避免过度优化。
Logo

加入社区!打开量化的大门,首批课程上线啦!

更多推荐