Ultralytics YOLO27: 加入候补名单。
Get Started

YOLOv7 与 YOLO26#

计算机视觉的发展历程中出现了许多重要里程碑,将传统架构与现代模型进行比较,能为机器学习工程师提供有价值的见解。本文从技术角度考察重要模型 YOLOv7 与 Ultralytics YOLO26 之间的差异,重点介绍架构、训练方法和部署效率方面的进步。

YOLOv7:“免费增益包”的先驱#

YOLOv7 于 2022 年年中推出,通过多项架构优化提升了 GPU 硬件上的实时检测能力,在不增加推理成本的情况下提高了准确率。

模型详情

YOLOv7 引入了可训练的“免费增益包”概念,大量采用重参数化技术和扩展高效层聚合网络 (E-ELAN)。这使模型能够学习更多样的特征,并持续提升网络的学习能力,同时不破坏原有的梯度路径。虽然它当时取得了 COCO 上的最先进成绩,但其架构依赖基于锚框的输出,并且需要进行非极大值抑制 (NMS)后处理,这可能会在部署时造成延迟瓶颈。

详细了解 YOLOv7

YOLO26:边缘优先的视觉 AI 标准#

Ultralytics YOLO26 于 2026 年 1 月发布,重新设计了检测流水线,重点提升部署便捷性、训练稳定性和硬件效率。

模型详情

YOLO26 面向现代部署需求进行设计,其架构带来了多项关键创新:

  • 端到端无 NMS 设计:YOLO26 提供可选的一对一检测头(nms=False),可跳过 NMS 后处理,这种方案最早由 YOLOv10 引入。由此形成的部署流水线更快、更简单,并能避免拥挤场景通常造成的延迟波动。
  • 移除 DFL:通过移除分布焦点损失 (DFL),模型的导出流程得以简化,并提高了对边缘设备和低功耗 IoT 硬件的兼容性。
  • CPU 推理速度最多提升 43%:得益于架构简化,YOLO26 针对边缘计算和没有专用 GPU 的设备进行了优化;YOLO26n 的 CPU 运行速度比 YOLO11n 最多快 43%。
  • MuSGD 优化器:受大型语言模型训练技术(特别是 Moonshot AI 的 Kimi K2)启发,YOLO26 使用 MuSGD 优化器,即随机梯度下降与 Muon 的混合优化器。这能让计算机视觉任务的训练更加稳定,收敛更快。
  • ProgLoss + STAL:渐进式损失和小目标感知标签分配策略可改善小目标识别效果,这对航拍图像、机器人和自动化质量检测至关重要。
  • 针对特定任务的改进:除了标准的目标检测,YOLO26 还为分割任务引入多尺度原型和专用语义分割损失,为姿势估计引入残差对数似然估计(RLE),并为有向边界框(OBB)引入专用角度损失算法,以解决边界问题。
迁移到 YOLO26

对于已经使用 ultralytics 软件包的项目,只需在 Python 代码中将模型字符串改为 yolo26n.pt,即可轻松升级到 YOLO26,权重会自动下载。使用原始仓库的 YOLOv7 项目可以沿用 YOLO 格式的数据集,并通过 Ultralytics API 重新训练。

性能与指标对比#

比较计算资源占用时,YOLO26 在准确率、速度和内存需求之间实现了更好的平衡。基于 Transformer 的模型或较早的大型架构通常需要大量 CUDA 内存,而 YOLO26 在消费级 GPU 上也能高效训练。

模型尺寸
(像素)
mAPval50-95速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(ms)
参数
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLO26n64040.938.91.72.45.5
YOLO26s64048.687.22.59.520.9
YOLO26m64053.1220.04.720.468.4
YOLO26l64055.0286.26.224.886.8
YOLO26x64057.5525.811.855.7194.4

如上所示,YOLO26m 模型的准确率与大得多的 YOLOv7x 相当(53.1 mAP),参数量不到后者的三分之一(20.4M 对 71.3M),并且通过 TensorRT 实现了更快的推理速度(4.7 毫秒对 11.57 毫秒)。

Ultralytics 生态系统的优势#

部署传统模型通常涉及复杂的第三方仓库、依赖冲突和手动导出脚本。相比之下,Ultralytics Platform 提供维护完善且统一的生态系统,可简化整个机器学习生命周期。

  • 易用性:借助直观的 Python API 和详尽的文档,你可以在几分钟内完成模型标注、训练和部署。只需一行代码即可将模型导出为 ONNX 或 CoreML 等格式。
  • 内存需求:Ultralytics 模型以低内存占用著称。与某些大型视觉 Transformer 不同,YOLO26 可以在标准硬件上进行微调,而不会遇到内存不足 (OOM) 错误。
  • 多功能性:YOLOv7 主要用于目标检测(其他任务仅有一些实验性分支),而 YOLO26 是一个统一框架,支持检测、实例分割、语义分割、深度估计、分类、姿势估计、OBB 以及多目标跟踪。
其他 Ultralytics 模型

虽然 YOLO26 是推荐的标准模型,但迁移旧系统的开发者也可以考虑 YOLO11,它是 Ultralytics 产品系列的上一代模型,在长期支持项目中稳定可靠。

代码示例:训练与部署#

下面的示例展示了 ultralytics 工作流,它取代了旧仓库中冗长的命令行参数。

from ultralytics import YOLO

# Load the lightweight YOLO26 nano model
model = YOLO("yolo26n.pt")

# Train the model efficiently on a dataset (e.g., COCO8)
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    batch=32,  # Efficient memory usage allows larger batch sizes
    device=0,
)

# Run an NMS-free, end-to-end inference on a test image
predictions = model("https://ultralytics.com/images/bus.jpg", nms=False)

# Export directly to ONNX for edge deployment
export_path = model.export(format="onnx")
print(f"Model exported successfully to: {export_path}")

实际应用场景#

选择合适的架构取决于你的生产环境限制。

适合考虑 YOLOv7 的情况: YOLOv7 对于需要依据 2022 年标准进行学术基准测试的研究人员来说,仍是一个有价值的工具。如果你的基础设施使用了硬编码为 YOLOv7 特定锚框输出的旧版 CUDA 流水线,并且无法投入资源重构,那么 YOLOv7 仍可作为可靠的基线检测器继续使用。

适合选择 YOLO26 的情况: 对于新项目,推荐使用 YOLO26。它可选的无 NMS 检测头适用于低延迟自主导航和实时安防系统。移除 DFL 并加快 CPU 推理速度后,YOLO26 非常适合边缘 AI 部署,例如在 Raspberry Pi 上运行或嵌入消费电子产品中。此外,ProgLoss + STAL 的改进有助于检测制造质量保障或卫星成像中的微小异常。

总的来说,YOLO26 为开发者提供了准确率、速度和易用性的出色组合,并由活跃的开源社区提供支持。

评论2

  1. Murat Raimbekov(已编辑)

    hey @bit-scientist, you're right - the YOLOv7 vs YOLO26 comparison tables only included YOLOv7l (51.4 mAP, 36.9M params) and YOLOv7x (53.1 mAP, 71.3M params) at 640px. they didn't include YOLOv7-tiny or the higher-resolution variants (W6, E6, D6, E6E at 1280px).

    these variants do exist in the yolov7 model docs with the numbers from the original paper:

    variantimgszmAPparams (M)flops (B)
    YOLOv7-tiny-SiLU64038.76.213.8
    YOLOv764051.436.9104.7
    YOLOv7-X64053.171.3189.9
    YOLOv7-W6128054.970.4360.0
    YOLOv7-E6128056.097.2515.2
    YOLOv7-D6128056.6154.7806.8
    YOLOv7-E6E128056.8151.7843.2

    the comparison focused on the two 640-resolution scales that line up most directly with the modern yolo26 sizes (n/s/m/l/x @ 640).

    worth noting: yolov7 is a third-party model from wang et al. and is not natively supported in the ultralytics package. we publish docs for reference, but training/inference uses the original WongKinYiu/yolov7 repo.

    1