2014 年那篇告诉你"小步快跑比大步流星更管用"的 AI 论文,后来成了所有图像 AI 的爷爷
- 关联论文:1409.1556
在它之前,大家都以为"卷积核越大越好"。 在它之后,全世界才反应过来:真正重要的不是你一步迈多远,而是你愿不愿意一步步走到底。
如果你今天用手机拍一张照片,相册自动分类"猫/狗/海滩/日落";如果你用人脸识别解锁手机;如果你看医生用 AI 帮你看 CT 片——这些功能的底层架构哲学,大部分都能追溯到一篇 2014 年的论文。
它叫 VGGNet,出自牛津大学 Visual Geometry Group(视觉几何组)——VGG 就是这个组名的缩写。它在 2014 年 ImageNet 大赛上拿了第二名,但它对整个深度学习的影响,远远超过任何一个"冠军"。
一句话总结:VGG 干了一件什么事?
把一个深度神经网络的卷积核,全部统一成 3×3 大小,然后把网络堆到 16-19 层那么深——证明"小核 + 深堆叠" 比 "大核 + 浅网络" 效果更好,而且参数更少、训练更稳定。
就这么简单的一个设计决定,改变了之后 10 年所有视觉 AI 的架构路线。
2014 年之前,大家是怎么做图像识别的?
把时间倒回 2012-2013 年,那时深度学习刚刚开始统治图像识别:
- AlexNet(2012):8 层卷积网络,把图像识别错误率从 26% 砍到 16%,震惊学术界。
- ZFNet(2013):做了可视化分析,但没有改架构。
这些早期网络有个共同点——使用大卷积核。
什么是"卷积核"?你可以把它想象成 AI 看图片时用的"放大镜":
- 5×5 卷积核 = 一次看一小块 5×5 像素的区域
- 7×7 卷积核 = 一次看更大的区域
- 11×11 卷积核(AlexNet) = 一次看一整块
当时的常识是:核越大,看得越宽,提取的特征越丰富。所以 AlexNet 第一层用了 11×11 这种"巨型放大镜"。
但 VGG 团队想:这个直觉真的对吗?
VGG 的关键实验:小核堆叠 vs 大核单层
VGG 团队做了一系列极其严谨的对照实验:
3 个连续的 3×3 卷积层,和一个 7×7 卷积层,看到的"视野范围"是一样大的。
因为每一层 3×3 卷积都会把感受野往外推 1 个像素,3 层就是 3+3+3 = 6,加上中心点正好等价于 7×7 的感受野。
但是!参数量和表达能力,差距巨大:
| 方案 | 感受野 | 参数量 | 非线性层数 |
|---|---|---|---|
| 1 个 7×7 卷积 | 7×7 | 49 C² | 1 |
| 3 个 3×3 卷积 | 7×7 | 27 C² | 3 |
- 参数节省 60%——计算更快、显存更省
- 非线性层多 2 倍——每层后接 ReLU,3 次非线性变换能拟合比 1 次复杂得多的函数
这就是 VGG 给整个领域的第一颗炸弹:小步快跑,比大步流星更管用。
VGG 的"全家福":从 11 层到 19 层
VGG 论文里最有名的贡献,是一张把所有配置列在一起的表格:
| 配置 | 卷积层数 | 总深度 | ImageNet Top-5 准确率 |
|---|---|---|---|
| A | 8 | 11 层 | 较低 |
| B | 10 | 13 层 | 提升 |
| C | 13 | 16 层 | 进一步提升 |
| D (VGG-16) | 13 | 16 层 | 92.6% |
| E (VGG-19) | 16 | 19 层 | 92.7% |
它们全部使用 3×3 卷积 + 2×2 最大池化,没有任何花哨的复杂结构。
VGG-16(13 个卷积层 + 3 个全连接层 = 16 个有权重的层)和 VGG-19(16 + 3)是最著名的两个版本,后来几乎成了计算机视觉课程的"标准教具"。
而论文最重要的实验发现是:从 A 到 E,每加一层深度,精度都有提升——直到 19 层。这给"深度红利"提供了第一个系统性的证据。
为什么 VGG-16/19 在工程上"贵"得离谱
VGG 看起来设计简洁,但在工程上有个致命问题:参数量和显存占用非常大。
- VGG-16 参数量:约 1.38 亿
- 其中全连接层就占了 1.24 亿(约 90%)
- 推理显存(单图):7-10 GB(FP32)
- 同期 GoogLeNet:参数量只有约 500 万,推理显存只需 1-2 GB
这就是为什么 2014 年 ImageNet 比赛第一名不是 VGG,而是 GoogLeNet——VGG 虽然精度高,但训练慢、推理慢、显存占用大。
不过有趣的是:VGG 的"工程劣势"反而成了它传播的助推器——因为它结构简单到极致,大家都能很快跑起来验证,迁移到自己的任务上。
VGG 的真正遗产:不是冠军,是"奠基者"
虽然 2014 年的比赛 VGG 是第二名(GoogLeNet 第一),但对之后深度学习的影响,VGG 远超 GoogLeNet。
1. 几乎所有后续 CNN 的设计都"站在 VGG 肩膀上"
- ResNet(2015):微软亚研院的 ResNet 把网络深度推到 152 层,但它底层依然沿用 VGG 的 3×3 堆叠范式,只是加了"残差连接"解决梯度消失。ResNet 是今天所有视觉骨干网络的祖宗。
- DenseNet(2017):用密集连接进一步加强深度网络的信息流动。
- MobileNet、EfficientNet(2017-2019):虽然改用 depthwise separable conv,但整体架构思路仍是 VGG 那一套——逐层下采样 + 末端全局池化。
2. "迁移学习"的奠基者
VGG 公开的预训练权重,让"用预训练模型做小数据集任务"成为可能。
在 VGG 之前,大家只能从头训练。在 VGG 之后:
- 你有 100 张医疗影像?把 VGG-16 的卷积层 freeze,只训练分类头,几小时就能跑出可用结果。
- 你有 1000 张商品图想做分类?直接加载
torchvision.models.vgg16_bn(weights='IMAGENET1K_V1'),一行代码搞定。
迁移学习在视觉领域的全面普及,VGG 是奠基者。
3. 特征可视化和解释性研究的起点
VGG 的中间层 feature map 特别干净——猫的轮廓、狗的眼睛、家具的边缘,层次分明。这让它成为特征可视化研究(比如 DeepDream、特征反演)最喜欢的对象。
直到今天,做"AI 为什么会这么判断"的研究,很多论文里画的还是 VGG 的中间层特征图。
VGG 在 2026 年的工程现状:还在用,但不再"前沿"
实事求是,VGG 在 2026 年的生产环境已经不再是首选:
| 时代 | 设计原则 | 代表架构 | VGG 的角色 |
|---|---|---|---|
| 2014-2016 | 3×3 堆叠 + 大 FC | VGG | 主流 |
| 2017-2020 | 深度残差 + 高效卷积 | ResNet, MobileNet | VGG 被替代 |
| 2021-2024 | 注意力机制 + Transformer | ViT, Swin, ConvNeXt | VGG 仅作 baseline |
| 2025-2026 | 多模态 + 大模型底座 | LLaVA, CLIP-based | VGG 主要用于教学和特征提取 |
但是,VGG 在以下场景今天依然活跃:
- 医学图像分割:VGG-16 的中间层特征在 U-Net 类架构里依然好用
- 风格迁移:Neural Style Transfer 论文至今默认 backbone 是 VGG-19
- 特征提取器:很多 retrieval、clustering 任务的 baseline
- 教学:CNN 入门教材的标配例子
工程实战:VGG 怎么用才对
如果你今天要在生产里用 VGG,有 3 个坑必须知道:
坑 1:全连接层占 90% 参数,要替换
VGG 原始架构里,3 个全连接层(4096→4096→1000)贡献了约 1.24 亿参数。
生产推荐:
import torchvision.models as models
# 直接用 torchvision 提供的现代版 VGG(带 BatchNorm,更快更稳)
vgg = models.vgg16_bn(weights='IMAGENET1K_V1')
# 推荐:只取卷积部分作为特征提取器
feature_extractor = vgg.features # 输出 [B, 512, 7, 7]
pooled = vgg.avgpool # GAP 层
或者用 Global Average Pooling(GAP) 替换全连接层——参数量从 1.38 亿降到约 300 万,精度损失 < 2pp。
坑 2:微调时要分层解冻
# 冻结前 20 层,只训练靠后的层 + 自定义分类头
for param in vgg.features[:20].parameters():
param.requires_grad = False
vgg.classifier[6] = nn.Linear(4096, num_classes)
optimizer = torch.optim.Adam(
filter(lambda p: p.requires_grad, vgg.parameters()),
lr=1e-4 # 微调用小学习率
)
坑 3:推理显存预算
VGG-16 FP32 推理单图需要 7-10 GB 显存,生产部署推荐:
- INT8 量化:显存降到约 3-4 GB,精度损失 < 1pp
- batch size 限制为 1-2:消费级 GPU(RTX 3080 10GB)勉强能跑
一句话总结
2014 年,牛津大学一个叫 VGG 的小组,用最简单的小卷积核堆叠,在 ImageNet 上做出了让整个领域重新思考"什么是好架构"的工作。
它不是最准的(GoogLeNet 第一),不是最快的(参数量大),也不是最新潮的(后来被 ResNet 超越)。
但它证明了"简洁 + 深度"的力量——这种力量,后来变成了 ResNet、MobileNet、EfficientNet,甚至 ViT 的设计哲学基础。
没有 VGG,就没有 ResNet。没有 ResNet,就没有今天所有的视觉 AI。
三个标题变体
- 2014 年那篇告诉你"小步快跑比大步流星更管用"的 AI 论文,后来成了所有图像 AI 的爷爷
- 为什么 ResNet、MobileNet、ViT 都"站在它肩膀上"?带你读懂 VGG 这个 CNN 奠基者
- 11×11 卷积核被 3×3 干掉了——2014 年 ImageNet 第二名 VGG,如何改写了视觉 AI 的设计哲学
小红书风格卡片文案(可直接发布)
📐 11×11 卷积核被 3×3 干掉了——2014 年那篇 ImageNet 第二名论文 📐
你今天用人脸识别解锁手机、用 AI 看 CT 片、自动给相册分类猫狗——这些功能的底层架构哲学,几乎全部能追溯到一篇 2014 年的论文 📄
它叫 VGGNet,出自牛津大学 Visual Geometry Group(视觉几何组)。
💡 它干了一件什么事?
把神经网络里的卷积核全部统一成 3×3 大小,然后把网络堆到 16-19 层那么深——证明"小核 + 深堆叠" 比 "大核 + 浅网络" 效果更好,而且参数更少、训练更稳定 ✨
就这么简单的一个设计决定,改变了之后 10 年所有视觉 AI 的架构路线。
🤔 2014 年之前大家是怎么做的?
当时的常识是:卷积核越大,看得越宽,提取的特征越丰富。
所以 AlexNet 第一层用了 11×11 的巨型卷积核。
但 VGG 团队想:这个直觉真的对吗?
💥 关键实验:小核堆叠 vs 大核单层
3 个连续的 3×3 卷积层,和一个 7×7 卷积层,看到的"视野范围"是一样大的
| 方案 | 感受野 | 参数量 | 非线性层数 |
|---|---|---|---|
| 1 个 7×7 卷积 | 7×7 | 49 C² | 1 |
| 3 个 3×3 卷积 | 7×7 | 27 C² | 3 |
📊 参数节省 60% 📊 非线性层多 2 倍——能拟合更复杂的函数
"小步快跑,比大步流星更管用" 💪
📋 VGG 的全家福
| 配置 | 深度 | Top-5 准确率 |
|---|---|---|
| VGG-16 | 16 层 | 92.6% |
| VGG-19 | 19 层 | 92.7% |
全部使用 3×3 卷积 + 2×2 最大池化,没有任何花哨结构 ✨
🏆 它不是冠军,但是真正的"奠基者"
虽然 2014 ImageNet 第一名是 GoogLeNet,但对之后深度学习的影响,VGG 远超 GoogLeNet:
📍 ResNet(2015)——把深度推到 152 层,但底层沿用 VGG 的 3×3 堆叠范式,加残差连接解决梯度消失。今天所有视觉网络的祖宗。
📍 MobileNet、EfficientNet(2017-2019)——整体架构思路仍是 VGG 那一套。
📍 迁移学习的奠基者——torchvision.models.vgg16_bn() 一行加载,在自己的小数据集上 fine-tune 几小时就能用。
📍 特征可视化研究——DeepDream、特征反演都用 VGG 中间层做研究对象。
⚠️ VGG 在 2026 年的现状:还在用,但不再"前沿"
| 时代 | 代表架构 |
|---|---|
| 2014-2016 | VGG ✨ |
| 2017-2020 | ResNet, MobileNet |
| 2021-2024 | ViT, Swin, ConvNeXt |
| 2025-2026 | LLaVA, CLIP-based |
但是,VGG 在这些场景依然活跃:
✅ 医学图像分割(U-Net backbone) ✅ 风格迁移(Neural Style Transfer 默认 backbone) ✅ 特征提取器(retrieval、clustering 任务) ✅ CNN 入门教学的标配例子
💬 评论区聊聊: 你们入门 CNN 的时候,第一次跑通的模型是 VGG 还是 ResNet?现在工作中还在用 VGG 吗?