Skip to content

yaml与pt不匹配?[Bug Report] 权重不匹配 (Transferred 650/701),导致 mAP 几乎为 0 #159

Description

@JLUbaijh2323

当我使用 Python 脚本,通过加载 yolov12.yaml 并 model.load('yolov12n.pt') 的方式来训练自定义数据集时,日志显示 Transferred 699/701 items from pretrained weights。

这导致训练完全无法收敛,第一个 epoch 的 mAP 仅为 9.57e-05,这表明模型的关键层(很可能是检测头)是随机初始化的。
如果我绕过 .yaml 文件,直接使用 model = YOLO('/home/MyProject/yolov12n.pt') 来训练(不使用 model.load()),模型 mAP 就能正常达到 0.6+。

这证明我的数据集、环境都是正常的。

问题似乎是出在仓库中的 yolov12.yaml(蓝图)和官方提供的 yolov12n.pt(权重)之间存在 2 个层的版本不匹配。这使得任何想要基于 .yaml 进行修改(比如我的科研项目)的下游任务都无法正确进行。

请问这是预期的行为吗?还是说 .yaml 和 .pt 文件确实不同步?我应该如何才能正确地加载 100% 的权重并开始修改 .yaml 文件?

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions