卷积神经网络 (CNN)
概述
卷积神经网络(CNN,Convolutional Neural Network)是处理网格状数据(如图像、视频)的核心架构。通过局部连接、权值共享和池化,CNN 自动提取层次化空间特征,从边缘纹理到高级语义,广泛应用于图像分类、目标检测、语义分割等视觉任务。自 2012 年 AlexNet 在 ImageNet 夺冠以来,CNN 成为计算机视觉的基石。
核心原理
局部连接:卷积核在输入上滑动,每个位置只与局部区域计算,符合图像的局部相关性——相邻像素关系密切,远距离像素关系较弱。
权值共享:同一卷积核扫遍整张图,同一模式(如边缘)在不同位置用同一组参数检测,大幅减少参数量并增强平移不变性。
层次化特征:浅层提取边缘、纹理,深层组合为部件和物体,形成从低级到高级的特征金字塔。
关键技术
卷积层:卷积核(如 3×3、5×5)与输入做互相关运算,多个卷积核产生多个特征图。步长(Stride)控制输出尺寸,填充(Padding)保持边界信息。
池化层:最大池化取局部最大值,保留显著特征、增强平移不变性;平均池化取均值,平滑效果更强;全局平均池化将特征图压缩为标量,常用于分类头。
残差连接:ResNet 引入跨层 shortcut,缓解深层网络的梯度消失,使训练上百层成为可能。
代表性工作
| 模型 | 年份 | 特点 |
|---|---|---|
| LeNet-5 | 1998 | 手写数字识别,CNN 先驱 |
| AlexNet | 2012 | ImageNet 冠军,开启深度学习时代 |
| VGGNet | 2014 | 3×3 卷积堆叠,结构规整 |
| ResNet | 2015 | 残差连接,可训练上百层 |
| EfficientNet | 2019 | 复合缩放,效率与精度平衡 |
应用场景
- 图像分类:CNN 因效率高、易部署而仍在大量实际系统中使用。
- 目标检测:YOLO、Faster R-CNN 等模型。
- 语义分割:U-Net、DeepLab 等。
- 人脸识别:身份验证与识别。
- 医学影像分析:辅助诊断与病灶检测。
- 自动驾驶视觉感知:环境感知与目标检测。
- 工业质检:缺陷检测与质量监控。
发展趋势
- Vision Transformer:在部分任务上超越 CNN。
- 混合架构:ConvNeXt、CoAtNet 等结合卷积与注意力。
- 轻量化网络:MobileNet、EfficientNet 等适配移动端与边缘设备。
- 神经架构搜索(NAS):自动设计网络结构。
推荐资源
- 论文:Deep Residual Learning for Image Recognition
- 课程:Stanford CS231n - Convolutional Neural Networks for Visual Recognition
- 实践:PyTorch 官方教程