YOLO-V1 与 YOLO-V2 核心笔记
一、YOLO-V1:one-stage 检测的经典开端
YOLO-V1 是首个成熟的 one-stage 目标检测算法,核心是 “You Only Look Once”—— 通过单次 CNN 前向传播完成 “目标定位 + 类别判断”,彻底简化检测流程。
1. 核心思想
- 将输入图像划分为S×S 网格(PPT 中 S=7),每个网格负责检测 “中心落在该网格内” 的目标。
- 每个网格输出B 个边界框(Bounding Box) 及对应置信度(Confidence),同时预测C 个类别概率(PPT 中 C=20,对应 20 类目标)。
- 最终通过 “边界框 + 置信度 + 类别概率” 融合,得到全局目标检测结果。
2. 网络架构
- 基础框架:基于 GoogLeNet 修改,共 20 层网络(含卷积层、全连接层)。
- 输入输出:输入尺寸 448×448×3,输出尺寸 7×7×30(对应 7×7 网格,每个网格 2 个边界框 + 20 类概率)。
- 输出维度计算:
(S×S)×(B×5 + C)
,其中 “5” 代表边界框的 5 个参数(x,y,w,h, 置信度),PPT 中 B=2、S=7、C=20,即 7×7×(2×5+20)=7×7×30。
3. 损失函数
损失函数通过 “平方差” 统一优化三类误差,确保定位与分类精度:
- 位置误差:对含目标的边界框,优化 (x,y,w,h) 与真实框的偏差(w、h 需开根号,减少大框误差占比)。
- 置信度误差:分两种场景 —— 含目标的边界框,优化 “置信度与 IoU 的偏差”;不含目标的边界框,降低置信度权重(避免背景干扰)。
- 分类误差:优化含目标网格的 “预测类别概率与真实类别的偏差”。
4. 关键技术:NMS(非极大值抑制)
通过筛选 “置信度最高” 的边界框,抑制冗余重叠框,保留最优检测结果(PPT 中示例置信度数值:0.98、0.83、0.81 等)。
5. 优缺点
- 优点:速度极快(PPT 暗示实时性适配视频检测)、结构简单(单次 CNN 完成检测)。
- 缺点:
- 每个网格仅预测 1 个类别,无法解决 “多目标重叠在同一网格” 的问题。
- 小目标检测效果差,边界框长宽比固定,适配性低。
二、YOLO-V2:针对性优化,更快更强
YOLO-V2 以 “解决 V1 缺陷” 为核心目标,通过 8 项关键改进,实现 “速度提升 + 精度跃升”,VOC2007 数据集 mAP 从 V1 的 63.4 提升至 78.6。
1. 核心改进(按优化方向分类)
(1)训练稳定性与精度提升
- Batch Normalization(BN 层):舍弃 V1 的 Dropout,所有卷积层后加 BN 层;统一输入数据分布,加速收敛,mAP 提升 2%,现已成为网络标配。
- 高分辨率训练:V1 训练用 224×224、测试用 448×448(易导致模型 “水土不服”);V2 在训练后期额外加 10 次 448×448 微调,mAP 提升 4%。
(2)网络架构重构:DarkNet
- 输入尺寸:416×416(比 V1 的 448 更适配后续降采样)。
- 核心设计:无全连接层(FC),通过 5 次降采样将特征图缩小至 13×13;用 1×1 卷积压缩通道数,大幅减少参数。
(3)边界框优化
- 聚类提取先验框:摒弃 Faster R-CNN 的 “固定长宽比先验框”,用 K-means 聚类(距离定义为 1-IoU)生成适配数据集的先验框,提升边界框初始精度。
- 引入 Anchor Box:每个网格对应 n 个 Anchor Box,检测框数量增至 13×13×n;召回率从 81%(无 Anchor)提升至 88%,mAP 基本持平(69.2→69.5)。
- 定向位置预测(Directed Location Prediction):避免 V1 的 “绝对偏移” 导致收敛不稳定,改用 “相对网格偏移”—— 通过 σ(tx)、σ(ty) 将偏移量限制在 0-1,确保边界框落在当前网格内(公式:bx=σ(tx)+Cx,by=σ(ty)+Cy;bw=pw×e^tw,bh=ph×e^th,其中 Cx/Cy 为网格坐标,pw/ph 为先验框尺寸)。
(4)小目标与多尺度适配
- Fine-Grained Features(细粒度特征融合):融合浅层小感受野特征与深层大感受野特征,解决 “深层特征丢失小目标信息” 的问题。
- Multi-Scale(多尺度训练):训练中每隔一定迭代次数,随机切换输入尺寸(320×320 至 608×608,步长 32),让模型适配不同尺度目标。
三、补充:感受野原理与网络设计逻辑
感受野指 “特征图上的一个点,对应原始图像的区域大小”,是 YOLO 网络设计的核心依据:
- 堆叠 3 个 3×3 卷积(步长 1),与 1 个 7×7 卷积的感受野相同(均为 7×7)。
- 优势:3 个 3×3 卷积的参数仅为 27C²(C 为通道数),远少于 7×7 卷积的 49C²;且多轮卷积可增加非线性变换,提取更细致的特征 —— 这也是 VGG、DarkNet 等网络用 “小卷积堆叠” 的核心原因。
四、演进总结:从 V1 到 V2 的优化逻辑
YOLO-V2 的所有改进均针对性解决 V1 的缺陷:
- 用 BN、高分辨率训练解决 “训练不稳定、精度低”;
- 用 Anchor Box、聚类先验框解决 “边界框适配性差”;
- 用特征融合、多尺度训练解决 “小目标检测弱”;
- 用 DarkNet 架构解决 “参数冗余”—— 最终实现 “更快、更强、更灵活” 的检测效果。