Ultralytics YOLO27:

YOLO11 与 YOLOv5#

选择合适的神经网络架构是任何计算机视觉项目的关键决策。随着人工智能领域不断发展,开发者和研究人员可用的工具也在持续演进。本综合指南将对Ultralytics生态中的两个里程碑式模型进行深入技术比较:备受推崇的 YOLOv5 和先进的 YOLO11。

无论你是在为边缘 AI应用部署轻量级模型,还是在云端 GPU 上处理高分辨率视频流,了解这些模型的架构细节、性能指标和理想应用场景,都能帮助你根据具体的部署约束做出数据驱动的选择。

模型沿革与技术细节#

这两个模型都体现了 Ultralytics 对开源协作、强劲性能和无与伦比易用性的承诺,因此深受全球机器学习社区青睐。

YOLO11 详情#

YOLOv5 详情#

架构差异#

从 YOLOv5 演进到 YOLO11 引入了多项重大的架构变化,旨在优化准确率和参数效率。

YOLOv5 是 PyTorch 生态中的先驱,引入了高度优化的 CSPNet(跨阶段部分网络)主干网络和 PANet(路径聚合网络)颈部网络。它依赖基于锚框的检测,需要预先定义锚框来预测目标边界。虽然这种方法非常有效,但针对自定义计算机视觉数据集调整锚框可能十分繁琐。

相比之下,YOLO11 转向了更现代的无锚框检测范式。这消除了手动调整锚框的需要,简化了训练流程,并提升了在包括 COCO 数据集在内的多样化数据集上的泛化能力。此外,YOLO11 采用了解耦头,这意味着分类和边界框回归任务在不同分支中分别处理。这种分离显著提升了收敛速度和平均精度(mAP),尤其适用于复杂的目标检测场景。

性能指标与基准测试#

下表对比了不同模型规模下的关键指标。Ultralytics 模型以较低的内存需求著称,与基于大型 Transformer 的替代方案相比,在训练期间通常消耗更少的 CUDA 内存,从而大幅降低了硬件入门门槛。

模型尺寸
(像素)
mAPval
50-95
速度
CPU ONNX
(毫秒)
速度
T4 TensorRT10
(毫秒)
参数量
(M)
FLOPs
(B)
YOLO11n64039.556.11.52.66.5
YOLO11s64047.090.02.59.421.5
YOLO11m64051.5183.24.720.168.0
YOLO11l64053.4238.66.225.386.9
YOLO11x64054.7462.811.356.9194.9
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

如图所示,YOLO11 实现了极具优势的性能平衡:在参数量与对应 YOLOv5 模型相当的情况下,始终能够取得更高的 mAP 分数。

训练方法与易用性#

Ultralytics 理念的核心原则之一是卓越的易用性,这得益于维护良好的生态系统和广泛的社区支持。

YOLOv5 历来依赖强大的命令行界面(CLI)脚本(train.pydetect.py)来执行。虽然功能强大,但要将这些脚本直接集成到自定义 Python 应用中,通常需要采用变通方案。

YOLO11 通过引入简洁的 ultralytics Python 软件包彻底改变了这一点。这个统一 API 原生支持从训练到导出模型ONNXOpenVINOTensorRT 等格式的全部流程。

借助 Ultralytics Platform 简化部署

如果你希望获得完全无需编写代码的体验,可以使用 Ultralytics Platform 标注数据、在云端训练模型,并将模型无缝部署到边缘设备。

代码比较#

如今,训练 Ultralytics 模型非常高效。下面介绍如何使用原生 Python API 训练 YOLO11:

from ultralytics import YOLO

# Load a pretrained YOLO11 small model
model = YOLO("yolo11s.pt")

# Train the model on custom data
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)

# Export the model to ONNX for deployment
model.export(format="onnx")

对于使用 YOLOv5 的旧版系统,通过 CLI 训练如下所示:

# Clone the repository and run the training script
git clone https://github.com/ultralytics/yolov5
cd yolov5
pip install -r requirements.txt

python train.py --img 640 --batch 16 --epochs 50 --data coco128.yaml --weights yolov5s.pt

理想用例与实际应用#

这两个模型各具优势,分别适用于不同的运行环境。

何时使用 YOLOv5#

尽管新一代模型已经问世,YOLOv5 仍然十分强大。以下场景强烈推荐使用它:

  • 旧版系统集成: 深度集成了 YOLOv5 特定张量结构或部署流水线、且难以轻松重构的环境。
  • 学术基线: 需要成熟且长期沿用的基线,以便在医学图像分析学术研究中实现可复现性的研究人员。

何时使用 YOLO11#

凭借出色的通用性,YOLO11 是现代生产流水线的理想选择:

展望未来:YOLO26 架构#

虽然 YOLO11 已成为卓越的标准,但计算机视觉前沿仍在快速发展。追求极致效率的开发者还应考虑最新的 Ultralytics YOLO26(于 2026 年 1 月发布)。

YOLO26 实现了巨大飞跃,专为边缘优化和企业级规模而设计。主要创新包括:

  • 端到端无 NMS 设计: YOLO26 原生支持端到端处理,无需进行非极大值抑制(NMS)后处理,从而实现更快速、更简单的部署。
  • 移除 DFL: 移除了 Distribution Focal Loss,从而简化模型导出并增强对低功耗设备的兼容性。
  • MuSGD 优化器: SGD 与 Muon 的突破性混合方案,将 LLM 训练的稳定性带入计算机视觉领域,实现更快收敛。
  • CPU 推理速度最高提升 43%: 针对物联网部署和没有专用 GPUs 的设备进行了深度优化。
  • ProgLoss + STAL: 大幅改进的损失函数,可显著提升小目标识别能力,这对于空中无人机图像至关重要。

总结#

最终选择 YOLO11 还是 YOLOv5,取决于项目所处的生命周期阶段。YOLOv5 的历史地位毋庸置疑,它提供了极高的稳定性和庞大的社区支持。不过,对于任何新项目,我们都强烈推荐选择 YOLO11,而不是旧一代模型。它融合了尖端准确率、极其优雅的 Python API 和更低的训练内存开销,巩固了 Ultralytics 在 AI 创新前沿的地位。对于希望进一步突破极限的用户,在 Ultralytics Platform 上探索最先进的 YOLO26 将带来无与伦比的效果。

评论