158、分类与回归损失的 10 种组合实验:Focal-VFL-DFL 的不同搭配与 mAP 矩阵
158、分类与回归损失的 10 种组合实验:Focal-VFL-DFL 的不同搭配与 mAP 矩阵一、一个让我熬夜到凌晨三点的 bug上个月调 YOLOv11 的检测头,发现 mAP 死活卡在 52.3% 上不去。换了 backbone、调了 anchor、甚至把 NMS 阈值从 0.5 改到 0.45,纹丝不动。最后用 wandb 把每个 loss 分量打出来,发现分类 loss 一直在 0.8 附近震荡,回归 loss 倒是降得挺漂亮。当时我就意识到:分类和回归的损失函数搭配出了问题。YOLOv11 默认用的是 BCE + CIoU + DFL,但实际场景下,正负样本极度不均衡、目标尺度差异大,这套组合拳未必是最优解。于是我把 Focal Loss、Varifocal Loss、Distribution Focal Loss 这三大主流损失函数,加上 BCE、Smooth L1、GIoU、CIoU 等基础损失,做了 10 种排列组合的消融实验。这篇文章就是那次实验的完整记录,代码全部可复现,数据全部真实。二、损失函数家族谱:先搞清楚每个家伙的脾气2.1 分类损失三兄弟BCE (Binary Cross Entropy)YOLO 系列的老祖宗,简单粗暴。但正样本太少时,模型会倾向于把所有目标都预测为背景。