yolov5到8到11 | vegeone
0%

yolov5到8到11

前言

​ YOLOv5,v8以及v11是YOLO系列比较经典的几个版本,这里进行简单的介绍并给出自己对三个版本之间的对比的浅薄理解。

YOLO

介绍

​ 在介绍相关版本之前,先了解一下YOLO是什么。

​ YOLO是把目标检测当成一个端到端的回归问题,一次前向传播同时预测类别 + 位置。YOLO 将模型将整张图像一次性输入一个深度卷积神经网络,通过主干网络(Backbone)提取多层次特征,再由颈部网络(Neck)进行特征融合以同时兼顾大目标与小目标,最后在检测头(Head)上直接对每个特征点或网格位置进行预测,输出边界框的中心位置、宽高、目标存在的置信度以及类别概率,训练时通过将预测结果与真实标注计算定位损失、置信度损失和分类损失并反向传播更新参数,推理时对预测框进行阈值筛选和非极大值抑制(NMS)以去除重复框,从而在一次前向传播中完成目标定位与分类,实现端到端、实时的目标检测。

YOLOv5

​ YOLOv5 并不是 YOLO 官方论文序列中的一篇论文,而是 Ultralytics 主导的一个工程化重构版本。相比 YOLOv4 及之前版本,YOLOv5 最重要的变化不是“提出了新的检测思想”,而是把 YOLO 从“研究模型”变成了“可落地工程框架”

​ 在整体结构上,YOLOv5 延续了典型的 Backbone + Neck + Head 三段式结构,但对每一部分都做了更适合工程实现的设计。Backbone 使用了基于 CSP(Cross Stage Partial)思想的 C3 模块,在保证特征表达能力的同时显著降低了计算量;Neck 部分采用 FPN + PAN 结构,使高层语义信息和低层空间信息可以充分融合;Head 仍然是传统 YOLO 的锚框(Anchor-based)检测头

​ 相比之前版本,YOLOv5 的一个关键进步在于训练与部署体验。它全面使用 PyTorch 实现,代码结构清晰,支持自动混合精度训练(AMP)、自动 anchor 生成、丰富的数据增强(如 Mosaic、MixUp),并且天然适配 ONNX、TensorRT 等部署方案。这使得 YOLOv5 成为“工业界最常用的 YOLO 版本之一”。

YOLOv8

​ YOLOv8 的本质是向现代检测范式靠拢。

​ 首先,YOLOv8 彻底移除了 Anchor 机制。在 YOLOv5 中,模型需要为不同尺度手工(或自动)设计 anchor,而 YOLOv8 改为直接预测目标中心点和宽高。这一变化显著降低了模型对先验框的依赖,使训练过程更稳定、超参数更少,也更容易迁移到新数据集。这一思路与 FCOS、CenterNet 等方法高度一致,说明 YOLO 开始系统性吸收“非 YOLO 系”检测方法的优势。

​ 其次,YOLOv8 对检测头进行了解耦设计。在 YOLOv5 中,分类和回归共享大部分参数;而在 YOLOv8 中,这两条分支被明确拆分,使分类任务专注于“是什么”,回归任务专注于“在哪里”。这一改变明显提升了收敛速度和检测精度,尤其对小目标和密集目标更友好。

​ 此外,YOLOv8 在损失函数、正负样本分配策略、训练流程上也做了系统优化,使模型在不显著增加参数量的前提下,取得了比 YOLOv5 更高的精度和更强的泛化能力。

YOLOv11

YOLOv11 的方向是:

  • 更少参数
  • 更强特征表达
  • 更好硬件适配(尤其是边缘设备)

在 Backbone 和 Neck 设计上,YOLOv11 更加注重算子友好性和硬件效率。通过调整模块堆叠方式、简化部分冗余计算路径,使模型在 GPU 和边缘设备上的吞吐率进一步提升。这种优化并不一定显著改变网络“看起来的结构”,但在真实部署场景中效果非常明显。

在检测头和训练策略上,YOLOv11 延续了 YOLOv8 的 Anchor-free + 解耦头 思路,但在损失计算、标签分配、尺度建模等细节上做了更稳健的调整,使训练过程对数据噪声和不平衡分布更加鲁棒。这类改动往往不容易从结构图中直接看出来,但对大规模数据训练尤为重要。

对比

对比维度 YOLOv5 YOLOv8(相对 v5) YOLOv11(相对 v8)
检测范式 Anchor-based Anchor-free(重大变化) Anchor-free(延续 v8)
Anchor 使用 需要预定义 anchor(可自动聚类) ❌ 完全移除 anchor ❌ 无 anchor
Head 结构 耦合头(分类+回归共用) 解耦头(分类头 / 回归头分离) 解耦头(进一步优化)
框回归方式 anchor 偏移回归 中心点 + 边界回归(ltrb) 更稳定的边界回归策略
Backbone CSPDarknet C2f(更轻量、梯度流更好) 改进版 C2f / 更高效模块
Neck PAN-FPN PAN-FPN(结构保留,细节优化) 结构精简,特征融合更高效
损失函数 CIoU + BCE DFL + CIoU(更精细定位) 改进的 IoU / 回归损失
训练稳定性 较依赖 anchor 设计 更稳定、更少超参数 稳定性和收敛速度进一步提升
推理速度 更快(anchor-free 减少分支) 更快、更省显存
支持任务 检测为主 检测 / 分割 / 分类 / 姿态 多任务统一(进一步增强)
工程友好性 成熟、社区大 结构更简洁,维护更容易 工程与部署友好度最高
核心进化关键词 工程化 Anchor YOLO Anchor-free + 解耦头 效率 / 稳定性 / 统一性