EfficientNet 简介
1. 什么是 EfficientNet
EfficientNet 是 Google Brain 于 2019 年提出的一类卷积神经网络(CNN)架构,旨在在 保持或提升模型精度的同时显著降低计算资源消耗。它的核心思想是 复合缩放(Compound Scaling)——通过统一、比例化地同时扩大网络的 深度(depth)、宽度(width) 与 输入分辨率(resolution),实现资源利用的最优平衡。
2. 设计动机
传统的网络扩展往往只在单一维度上进行(仅加层、仅加宽或仅提升分辨率),会导致 计算成本与精度提升不匹配。EfficientNet 通过系统化的复合缩放,避免了这种单向扩展的低效,能够在 相同 FLOPs 下获得更高的 Top‑1 准确率。
3. 关键技术要素
要素 | 作用 | 说明 |
---|---|---|
MBConv 块(Mobile Inverted Bottleneck Convolution) | 轻量化卷积单元 | 采用深度可分离卷积,降低参数量和计算量,是 EfficientNet 的基本构建块 |
Squeeze‑and‑Excitation(SE)模块 | 通道注意力机制 | 动态调节通道重要性,提升特征表达能力 |
Swish 激活函数 | 非线性映射 | 相比 ReLU 更平滑,有助于梯度传播 |
复合系数 φ | 统一控制深、宽、分辨率的放大比例 | 通过 α、β、γ 三个超参数满足 α·β²·γ ≈ 2,保证 FLOPs 增长约为 2 倍 |
4. 复合缩放公式
给定基准网络(EfficientNet‑B0),通过复合系数 φ 计算:
- 深度:
- 宽度:
- 分辨率:
其中 α、β、γ 为在 NAS(神经架构搜索)阶段得到的最优比例,φ 决定模型规模。不同的 φ 产生 B0–B7 系列模型,分别对应从轻量到超大规模的需求。
5. EfficientNet 系列(B0‑B7)
模型 | 参数量 (M) | FLOPs (B) | ImageNet Top‑1 | 备注 |
---|---|---|---|---|
B0 | 5.3 | 0.39 | 77.1% | NAS 生成的基准网络 |
B1 | 7.8 | 0.70 | 79.1% | 轻度放大 |
B2 | 9.2 | 1.0 | 80.1% | |
B3 | 12.0 | 1.8 | 81.6% | |
B4 | 19.0 | 4.2 | 82.9% | |
B5 | 30.0 | 9.9 | 83.6% | |
B6 | 43.0 | 19.0 | 84.0% | |
B7 | 66.0 | 37.0 | 84.4% | 最高精度,参数最少、速度最快的同类模型 |
例如,EfficientNet‑B7 在 ImageNet 上的 Top‑1 准确率达到 84.4%,而 FLOPs 仅为 ResNet‑152 的约 1/6,推理速度提升 6 倍以上。
6. 训练与迁移学习
- 基线训练:使用大规模 ImageNet 数据集,采用 AutoAugment、MixUp、Label Smoothing 等数据增强技巧,提高收敛效率。
- 迁移学习:由于模型体积相对紧凑,常在下游任务(如 CIFAR‑100、Flowers、医学影像)上直接 fine‑tune,能够在 参数量仅为原模型 1/10 的情况下取得 同等或更好 的表现。
7. 应用场景
- 移动端 / 边缘计算:轻量化的 B0‑B2 适合在智能手机、嵌入式设备上实时推理。
- 高精度需求:B5‑B7 常用于服务器端的大规模图像分类、目标检测、语义分割等任务。
- 跨领域迁移:在医学影像诊断、植物病害识别、情感分析等非视觉任务的特征提取阶段,也常使用 EfficientNet 预训练模型。
8. 后续发展
- EfficientNet‑V2(2021 年提出)在搜索空间与训练技巧上进一步优化,提升了训练速度与精度。
- 近期研究(2024‑2025)继续探索 更高效的复合系数、自适应缩放 以及 轻量化注意力模块,推动模型在 资源受限 环境下的更广泛落地。
小结
EfficientNet 通过 复合缩放 的系统化方法,在 深度、宽度、分辨率 三维度上实现了最优的资源‑精度平衡。其核心模块(MBConv、SE、Swish)和一系列 B0‑B7 变体,使得该系列在 ImageNet 等基准上取得了 领先的准确率 与 显著更低的计算成本,因此成为 移动端、边缘计算以及高精度视觉任务 的首选模型之一。
声明:文章均为AI生成,请谨慎辨别信息的真伪和可靠性!