133、Head 改进全景总结:10 种 Head 改进方案的横向对比与最优组合推荐

📅 2026/7/6 17:41:40
133、Head 改进全景总结:10 种 Head 改进方案的横向对比与最优组合推荐
133、Head 改进全景总结:10 种 Head 改进方案的横向对比与最优组合推荐从一次深夜调试说起凌晨两点,盯着 tensorboard 上那条死活不降的 val_loss,我差点把咖啡泼到键盘上。YOLOv11 的 baseline 在 VisDrone 上 mAP@0.5 卡在 42.3% 已经三天了,小目标漏检率居高不下。当时我试了十几种 Head 改进方案,有的让 mAP 直接跳水 5 个点,有的训练到一半就 NaN 爆炸。后来翻出自己两年前给 YOLOv5 写的那套解耦头代码,改了几行适配 v11,mAP 直接跳到 45.1%。那一刻我意识到:Head 改进不是堆模块,是找对组合。为什么 Head 是 YOLOv11 的瓶颈YOLOv11 的 backbone 和 neck 已经很强了——C2f 模块堆叠、SPPF 多尺度融合,但 Head 部分还是那套老配方:分类分支和回归分支共享特征,用 1x1 卷积直接映射。这在简单场景下够用,一旦遇到遮挡、小目标、密集场景,分类和回归的任务冲突就会暴露。分类需要平移不变性,回归需要位置敏感性,共享特征等于让一个网络同时做两件矛盾的事。我做过一个极端实验:把 Head 的输入特征图可视化,发现分类分支激活的区域和回归分支激活的区域高度重叠,但激活强度完全相反。这意味着网络在同一个位置既要判断“这是人”,又要判断“人的框在哪”,两个任务在梯度回传时互相拉扯。