Ch07 CNN与CV

CNN 卷积神经网络 (Convolutional Neural Network)

一句话理解

CNN 是专门为图像设计的神经网络——通过卷积核扫描图像提取局部特征,通过池化压缩信息,通过多层堆叠从边缘到纹理到物体逐级抽象。它是计算机视觉过去十年的绝对统治者。

零基础理解

你看一张猫的照片,不是在”逐像素”看——你看到的是耳朵的形状、眼睛的颜色、毛发的纹理,最后组合成”这是一只猫”。CNN 模仿这个过程:第一层看出边缘和颜色块,第二层从边缘组合出纹理和形状,第三层从形状组合出”耳朵”和”眼睛”,最后判断”这是猫”。

为什么全连接网络不适合图像

问题说明
参数爆炸224×224×3 的图像有 150,528 个像素,第一层 1000 个神经元就需要 1.5 亿个参数
丢失空间结构全连接把所有像素打平成一维,丢失了”相邻像素相关”的信息
平移不变性猫在图片左边和右边应该是同一个猫,全连接无法天然处理

CNN 通过局部连接(卷积核只看局部)和权重共享(同一个卷积核扫过整张图)解决了这三个问题。

核心组件

1. 卷积核 (Convolution Kernel / Filter)

卷积核是一个小矩阵(如 3×3),在图像上滑动,每次计算”核覆盖区域”与”核值”的逐元素乘积之和。

输入图像 (5×5):         卷积核 (3×3):        输出特征图 (3×3):
┌               ┐       ┌         ┐          ┌               ┐
│ 1  2  3  0  1 │       │ 1  0  1 │          │ 7   8   6     │
│ 0  1  2  3  0 │       │ 0  1  0 │          │ 5   9   7     │
│ 3  0  1  2  1 │       │ 1  0  1 │          │ 8   6   5     │
│ 2  3  0  1  2 │       └         ┘          └               ┘
│ 1  2  3  0  1 │
└               ┘

计算示例 (左上角):
1×1 + 2×0 + 3×1 + 0×0 + 1×1 + 2×0 + 3×1 + 0×0 + 1×1 = 7

卷积核的作用:不同的核值检测不同的特征——有的检测水平边缘,有的检测垂直边缘,有的检测纹理,有的检测颜色变化。

卷积核类型核值示例检测内容
水平边缘[[1,1,1],[0,0,0],[-1,-1,-1]]水平方向明暗变化
垂直边缘[[1,0,-1],[1,0,-1],[1,0,-1]]垂直方向明暗变化
锐化[[0,-1,0],[-1,5,-1],[0,-1,0]]增强边缘
模糊[[1,1,1],[1,1,1],[1,1,1]]/9平滑降噪

2. 通道 (Channel)

概念说明
输入通道彩色图有 3 个通道(RGB),每个通道是一个二维矩阵
输出通道每个卷积核产生一个输出通道(特征图)。N 个卷积核 → N 个输出通道
通道间的卷积每个输出通道的卷积核是三维的(kernel_h × kernel_w × 输入通道数),对输入所有通道做卷积后求和

3. 池化 (Pooling)

池化对特征图进行下采样,减小尺寸,同时保留重要信息。

池化类型操作效果
最大池化 (Max Pooling)取窗口内最大值保留最强特征,对微小位移鲁棒
平均池化 (Avg Pooling)取窗口内平均值平滑特征,保留背景信息
全局平均池化 (Global Avg Pooling)整个特征图取平均替代全连接层,减少参数
最大池化 (2×2, stride=2):
┌          ┐      ┌       ┐
│ 1  3  2  4 │      │ 3  4  │
│ 5  6  7  8 │  →   │ 8  9  │
│ 2  1  9  3 │      └       ┘
│ 4  5  6  2 │
└          ┘

4. 感受野 (Receptive Field)

感受野是输出特征图上一个像素”看到”的原始输入图像区域大小。

层数卷积核大小感受野大小理解的层次
第 1 层3×33×3边缘、颜色
第 2 层3×35×5纹理、角点
第 3 层3×37×7简单形状
第 5 层3×311×11物体部件(眼睛、轮子)
第 10 层3×321×21完整物体(脸、车)

感受野公式:

其中 是第 l 层的卷积核大小, 是第 i 层的步长。

CNN 经典架构

模型年份层数核心创新地位
LeNet-519985卷积+池化+全连接CNN 鼻祖
AlexNet20128ReLU + Dropout + GPU深度学习革命开端
VGG-16/19201416-19只用 3×3 卷积,层数加深简洁优雅,影响深远
GoogLeNet (Inception)201422多尺度卷积核并行拓宽网络而非加深
ResNet201550-152残差连接,解决深层退化里程碑级突破
DenseNet2017121-264密集连接特征复用极致
MobileNet201728深度可分离卷积移动端高效
EfficientNet2019B0-B7复合缩放(深度/宽度/分辨率)精度和效率的平衡
ConvNeXt2022T/S/B/LCNN 现代化——借鉴 Transformer2022 年 CNN 最强

2026 年 CNN 的地位

领域CNN 使用情况
图像分类仍广泛使用,ViT 在追赶 (大数据集 ViT 更强)
目标检测YOLO 系列(CNN)仍是实时检测首选
图像分割CNN (U-Net) 在医学图像仍占主导
视频理解3D CNN + Transformer 混合
自动驾驶CNN 是感知模块主力
手机端 AIMobileNet/EfficientNet 是唯一选择

结论:Transformer 在 NLP 取代了 RNN/LSTM,但在 CV 领域 CNN 和 ViT 仍在竞争——CNN 在小数据和实时场景更有优势,ViT 在大数据和预训练场景更有优势。

相关笔记

来源

关联11

知识图谱

局部图谱 · 点节点跳转