Skip to content

增加Yolo11模型#3415

Open
yicycyc wants to merge 4 commits into
PaddlePaddle:developfrom
yicycyc:yolo11-upstream-pr
Open

增加Yolo11模型#3415
yicycyc wants to merge 4 commits into
PaddlePaddle:developfrom
yicycyc:yolo11-upstream-pr

Conversation

@yicycyc

@yicycyc yicycyc commented Apr 10, 2026

Copy link
Copy Markdown

本 PR 在 PaddleClas 中新增 YOLO11-cls 分类模型的 Paddle 实现,覆盖 n/s/m/l/x 五个规格。

YOLO11 在上游 Ultralytics 中没有 timm 对应实现,且其官方实现基于 PyTorch。为了满足 PaddleClas 的接入要求,本次迁移未复用 PyTorch 网络代码,而是参考 PaddleClas 现有模型实现方式,完成了纯 Paddle 版本的网络重写、配置接入和文档补充。
在精度验证上,完成了下面的验证:

  • 做到官方权重下的前向数值对齐
  • 在 ImageNet1k 验证集上完成精度复现

1. 新增 YOLO11-cls 模型实现

新增 Paddle 版 YOLO11-cls Backbone,实现文件:

  • ppcls/arch/backbone/model_zoo/yolo11.py

支持以下模型:

  • YOLO11_cls_n
  • YOLO11_cls_s
  • YOLO11_cls_m
  • YOLO11_cls_l
  • YOLO11_cls_x

并完成注册:

  • ppcls/arch/backbone/__init__.py

2. 新增 ImageNet 配置

新增 YOLO11-cls 的 ImageNet 配置文件:

  • ppcls/configs/ImageNet/YOLO11/YOLO11_cls_n.yaml
  • ppcls/configs/ImageNet/YOLO11/YOLO11_cls_s.yaml
  • ppcls/configs/ImageNet/YOLO11/YOLO11_cls_m.yaml
  • ppcls/configs/ImageNet/YOLO11/YOLO11_cls_l.yaml
  • ppcls/configs/ImageNet/YOLO11/YOLO11_cls_x.yaml

说明:

  • 配置中的评估预处理已与 Ultralytics 官方分类模型保持一致
  • 使用 Resize(224) -> CenterCrop(224) -> ToTensor
  • 不使用 ImageNet mean/std 标准化,因此 NormalizeImage 采用 mean=[0,0,0]std=[1,1,1]

3. 新增模型文档

新增中文模型文档:

  • docs/zh_CN/models/ImageNet1k/YOLO11.md

验证结果

1. 前向对齐

基于 Ultralytics 官方 yolo11*-cls.pt 权重,对 Paddle 模型与源模型进行前向对齐,比较末级特征 feat 和分类输出 out

模型 feat max_abs_diff out max_abs_diff
YOLO11_cls_n 4.23e-6 3.81e-6
YOLO11_cls_s 9.48e-6 9.66e-6
YOLO11_cls_m 3.24e-6 5.96e-6
YOLO11_cls_l 6.14e-6 3.34e-6
YOLO11_cls_x 3.70e-6 3.10e-6

结论:

  • 五个规格均完成前向对齐
  • 最大绝对误差稳定在 1e-5 以内

2. ImageNet1k 精度复现

在 ImageNet1k val 集上评估结果如下:

模型 Paddle Top1 Paddle Top5 Reference Top1 Reference Top5
YOLO11_cls_n 0.70054 0.89390 0.700 0.894
YOLO11_cls_s 0.75402 0.92644 0.754 0.927
YOLO11_cls_m 0.77402 0.93836 0.773 0.939
YOLO11_cls_l 0.78344 0.94224 0.783 0.943
YOLO11_cls_x 0.79428 0.94878 0.795 0.949

结论:

  • Paddle 复现精度与 Ultralytics 官方结果基本一致
  • 说明模型实现、权重转换和评估预处理均已对齐

@paddle-bot

paddle-bot Bot commented Apr 10, 2026

Copy link
Copy Markdown

Thanks for your contribution!

MODEL_URLS = {}

__all__ = [
"YOLO11_cls_n",

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

需要模型权重,发给负责人,负责人提供链接后写到代码中

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants