我们上一篇文章拆解了目标检测领域的最新模型架构,讲了YOLO12、YOLO26和RF-DETR各自的设计思路。那篇偏理论,这篇直接上手:怎么在PyCharm里用这些模型,怎么在跟训练数据完全不同的专用数据集上做微调,以及怎么评估结果。

为什么必须微调

打开网易新闻 查看精彩图片

你下载的每一个预训练检测器,几乎都是在COCO上训练的。COCO有大约11.8万张日常场景训练图,覆盖80个常见类别——人、车、狗、椅子这些。但真实部署场景里的数据,跟COCO长得完全不一样。

实际会用目标检测的地方,比如受损的工业电缆、X光片上的骨折、货架上密密麻麻堆叠的汽水瓶,有两个致命问题。第一是词汇表之外:骨折不在COCO的80个类别里,模型根本没有对应的输出类别。第二是视觉分布之外:X光影像、工业特写、严重遮挡的货架场景,在纹理、视角、物体密度上都跟消费级照片差异巨大。所以把检测器部署到分布外数据上,微调是绕不过去的。

先做基线复现

在动手微调之前,得先确认这些模型在我们自己的硬件上能跑出跟开发者报告相近的结果。这次实验聚焦三个当前SOTA目标检测家族,每个家族取两个尺寸:YOLO12的n和m版本,YOLO26的n和m版本,RF-DETR的Nano和Base版本。

我们用这六个预训练权重在COCO val2017上做基线复现,目的是确认本地环境下的表现与开发者报告的结果一致,然后再进入微调环节。