详解YOLOv5与 YOLOv8的主要区别

0 阅读3分钟

一、宏观定位与生态区别

f72cf3fd-b5c6-480d-b81c-5cbddc387d6d.png

二、网络架构核心区别

1. Backbone(主干网络)

YOLOv5:CSPDarknet53

  • 核心模块:C3模块(CSP Bottleneck with 3 convolutions)
  • 结构:借鉴CSPNet,将特征图分为两部分,一部分经过卷积,一部分直接连接,减少计算量
  • 激活函数:SiLU(训练) / Hardswish(部分部署)

YOLOv8:改进的CSPDarknet

  • 核心模块:C2f模块(CSPDarknet with 2 convolutions and 更多分支
C3 vs C2f 对比
C3:   ConvBottleneck × N → Conv  (单一路径)
C2f:  ConvSplit → [Bottleneck × N] → ConcatConv  (多分支并行)
  • 改进点

    • 更多的梯度回传分支,训练时信息流动更丰富
    • 在相同计算量下,特征重用率更高
    • 为后续的特征金字塔提供更丰富的语义信息

影响:YOLOv8的Backbone参数量略增,但梯度流动更顺畅,训练更容易收敛。

2. Neck(特征金字塔)

YOLOv5:PANet(Path Aggregation Network)

  • 结构:FPN(自顶向下) + PAN(自底向上)的双向融合
  • 融合方式:直接相加(add)  或 拼接(concat)

YOLOv8:改进的PANet

  • 结构:仍然是FPN+PAN,但上采样阶段的融合方式改变

  • 关键改进

    • 在FPN阶段,去除了一些1x1卷积,减少计算量
    • 在PAN阶段,使用了更深的融合路径
    • 输出的特征图尺寸略有调整(P3, P4, P5更加均衡)

影响:YOLOv8的特征融合效率更高,特别是在小目标检测上有所提升。

3. Head(检测头)—— 最大的架构变革

YOLOv5:耦合头(Coupled Head) + Anchor-Based

  • 结构:一个卷积层同时输出分类和回归结果
  • 输出:(cls + 4 + 1) × 3 (分类数 + 坐标 + 置信度)× 锚框数
  • Anchor依赖:需要预先聚类Anchor,训练和推理都依赖

YOLOv8:解耦头(Decoupled Head) + Anchor-Free

  • 解耦设计

    • 分类分支:单独一组卷积,输出类别概率
    • 回归分支:单独一组卷积,输出边界框坐标
    • 回归分支还包含 IoU分支(预测框与GT的IoU)
  • Anchor-Free

    • 不再需要预设Anchor
    • 直接预测中心点 + 宽高(或上下左右距离)
    • 正样本分配基于中心点距离 + 尺度匹配

8fba8a8c-9d4b-4851-8bdc-d442a404f9b4.png

三、训练策略与损失函数

1. 正负样本分配(Label Assignment)

YOLOv5:静态分配

  • 基于Anchor与GT的IoU:IoU > 阈值(如0.5)为正样本
  • 每个GT可能匹配多个Anchor
  • 规则固定,不随训练动态调整

YOLOv8:动态分配(TaskAligned Assigner)

  • 同时考虑分类得分回归质量
alignment_metric = classification_score^α × IoU
  • 选择TopK个对齐分数最高的样本作为正样本
  • 随着训练进行,正样本分配动态调整

影响:YOLOv8能更好地处理边界样本(如遮挡、模糊目标),因为分配策略考虑了模型当前的学习状态。

2. 损失函数

7cbf0a01-bd6d-4502-b493-f3073a1b2ce3.png

YOLOv8创新点详解

DFL(Distribution Focal Loss)

  • 传统回归:直接预测坐标值(点估计)
  • DFL:预测坐标的概率分布(比如预测框左边框在x-1, x, x+1的概率)
  • 优势:提供不确定性估计,对模糊边界更鲁棒

无obj_loss

  • v5需要判断"网格内是否有目标"(obj)
  • v8通过解耦头,让分类分支直接学习"目标存在且类别正确"的联合概率

3. 数据增强

YOLOv5

  • Mosaic(图像拼接,概率1.0)
  • Copy-Paste(部分版本)
  • 各种几何/色彩增强

YOLOv8

  • Mosaic概率降低(默认0.5,最后10epoch关闭)
  • 增加了更多的色彩增强选项
  • 更精细的增强参数设置

原因:YOLOv8发现Mosaic过强会导致特征偏移(模型学会依赖拼接边界),因此后期关闭。

四、性能对比(官方COCO数据集)

4cdb5cf5-403c-4745-97aa-b6317b54054c.png

解读

  • 同级别下,YOLOv8 mAP提升约 3-5%
  • 代价:参数量增加 30-50% ,计算量增加 50-70%
  • 推理速度:YOLOv8略慢(约10-20%),但仍在可接受范围