卷积神经网络(CNN)核心知识点总结
一、全连接层的局限性与 CNN 的必要性
全连接层(MLP)的适用场景与缺陷
- 多层感知机(MLP)仅适合处理表格数据(行 = 样本,列 = 特征),但处理图像时需将二维图像展平为一维向量,导致丢失空间结构信息(如像素间的位置关联)。
- 实例:猫狗分类任务中,3600 万像素的 RGB 图像用 100 神经元单隐含层 MLP,参数量达36 亿(100×3600 万),远超实际需求,计算成本极高。
CNN 的核心优势通过参数共享机制(同一卷积核作用于全图)和池化方法,大幅降低参数量,同时保留图像空间结构信息,解决 MLP 处理图像的痛点。
二、CNN 的两大核心设计原则
CNN 的结构设计基于对视觉感知的模拟,核心遵循两大原则:
平移不变性无论检测对象(如猫、狗)出现在图像的哪个位置,神经网络前几层对相同图像区域(如猫的耳朵)应产生相似响应,确保目标位置不影响检测结果。
局部性神经网络前几层仅关注输入图像的局部区域(如 3×3、5×5 窗口),无需过度关联远距离区域,符合人类视觉先感知局部再整合全局的特点。
三、CNN 的核心组件
(一)卷积层
卷积层是 CNN 提取特征的核心,通过卷积核与输入的交叉相关运算提取图像特征。
基本原理输入图像与卷积核(Kernel)进行交叉相关运算,再叠加偏置(Bias),得到输出特征图(Feature Map):
- 卷积核:可学习参数,大小为超参数(如 3×3、5×5),每个卷积核对应一种特征(如边缘、纹理)。
- 偏置:每个输出通道对应 1 个可学习偏置。
卷积的典型应用不同卷积核可提取不同特征,常见场景包括:
- 边缘检测:用特定卷积核(如
[-1,-1,-1;-1,8,-1;-1,-1,-1]
)捕捉图像明暗边界。 - 锐化:增强图像细节对比度。
- 高斯模糊:平滑图像,减少噪声。
- 边缘检测:用特定卷积核(如
多通道卷积(彩色图像处理)彩色图像含 RGB3 个通道,卷积层需为每个输入通道分配 1 个卷积核,各通道卷积结果求和后得到单通道输出;若需多个输出特征,则设置多个 “多通道卷积核组”。
- 实例:输入为 7×7×3(高 × 宽 × 通道),用 2 个 3×3×3 的卷积核,输出为(7-3+1)×(7-3+1)×2=5×5×2(若不填充)。
(二)填充(Padding)与步幅(Stride)
两者均用于调整卷积层输出特征图的维度,平衡计算量与特征保留。
填充
- 定义:在输入图像周围添加额外行 / 列(通常填充 0),避免边缘像素仅被卷积一次导致的信息丢失。
- 作用:增加输出特征图的高度和宽度,确保边缘特征被有效提取。
步幅
- 定义:卷积核在输入图像上滑动时的行 / 列步长(如步幅 2 表示每次滑动 2 个像素)。
- 作用:成倍减少输出特征图的维度,降低计算量(如 224×224 输入用 5×5 卷积核,步幅增大可减少卷积层数)。
总结:填充与步幅配合使用,可灵活调整输出维度,适配后续网络层的输入要求。
(三)池化层
池化层用于进一步降维、减少参数,同时增强模型对平移的鲁棒性,无需要学习参数。
两大常见池化操作
池化类型 操作逻辑 核心作用 最大池化 取池化窗口(如 2×2)内的最大值 保留局部区域的显著特征(如边缘、纹理),增强非线性 平均池化 取池化窗口内的平均值 平滑局部特征,减少噪声干扰 典型设置:常用 2×2 池化窗口,步幅 2,可将特征图维度减半(如 4×4→2×2)。
四、经典 CNN 架构演进
(一)LeNet-5(1995,手写数字识别)
- 核心定位:首个实用的 CNN 架构,奠定 CNN 基础,用于 MNIST 手写数字识别(10 类,28×28 灰度图,6 万样本)。
- 架构组成
- 卷积编码器:2 个卷积层(5×5 卷积核,sigmoid 激活)+2 个平均池化层(2×2,步幅 2),逐步提取边缘、形状等特征。
- 全连接密集块:3 个全连接层,最终输出 10 类概率(对应 0-9 数字)。
(二)AlexNet(2012,ImageNet 竞赛冠军)
- 核心突破:从浅层网络迈向深层网络,引发计算机视觉(CV)范式转变,适配 ImageNet 数据集(1400 万样本,1000 类,469×387 彩色图)。
- 架构特点
- 层数:共 8 层(5 个卷积层 + 2 个全连接隐藏层 + 1 个全连接输出层),输入为 3×224×224 彩色图。
- 关键改进:
- 激活函数:用ReLU 替代 sigmoid,解决 sigmoid 梯度消失问题,加速训练。
- 正则化:在全连接层后加入丢弃法(Dropout),防止过拟合。
- 池化:用3×3 最大池化(步幅 2) 替代 LeNet 的 2×2 平均池化,保留更多细节。
- 数据增强:通过图像翻转、裁剪等扩充训练数据,提升泛化能力。
五、学习表征与视觉分层理论
表征学习的概念
- 浅层学习:依赖人工经验或特征转换(如 HOG、SIFT)提取特征,效率低且泛化差。
- 表示学习:通过深度模型自动学习有效特征,从底层到高层逐步抽象,提升模型性能。
视觉分层理论(CNN 特征提取逻辑)CNN 的卷积层特征提取遵循 “从底层到高层” 的分层逻辑,与人类视觉感知一致:
- 浅层卷积核:提取底层像素特征(边缘、颜色、斑块)。
- 中层卷积核:提取中层纹理特征(条纹、纹路、简单形状)。
- 高层卷积核:提取高层语义特征(眼睛、轮胎、文字等目标部件,最终关联到具体类别)。
六、CNN 发展脉络总结
架构 | 年份 | 核心特点 | 关键改进 |
---|---|---|---|
LeNet | 1995 | 首个实用 CNN,适配小尺寸灰度图(28×28) | 卷积 + 池化的组合,奠定 CNN 结构基础 |
AlexNet | 2012 | 更深更大,适配大尺寸彩色图(3×224×224),CV 范式转变 | ReLU 激活、Dropout、最大池化、数据增强 |