
别再无脑开启--anchor-tune了!90%的人用错了自动锚框引言:一个让无数人翻车的参数先讲一个真实案例。上个月,一位读者在后台私信我:“用YOLOv11s训练工业零件检测数据集,COCO预训练权重下mAP50有0.52,换到自己的数据集上直接掉到0.31。”排查了两天,最后发现罪魁祸首是默认的Anchor Ratio——YOLOv11默认的anchor宽高比是[0.5, 1.0, 2.0],而他的数据集中大部分目标都是细长螺丝钉(宽高比0.150.3)和圆形垫片(宽高比0.91.1)。这时候,很多人第一反应是:开启--anchor-tune自动计算不就完了?但问题没那么简单。YOLOv11虽然引入了动态分配策略(TaskAlignedAssigner),但anchor ratio的初始化依然沿用YOLOv5时代的固定值。动态分配只是在训练过程中调整正样本匹配,如果初始anchor跟真实目标分布差太远,模型在早期训练阶段就会陷入混乱——梯度震荡、收敛缓慢,最终mAP上不去。那--anchor-tune到底该怎么用?什么时候该开,什么时候该关?本文将从源码层面彻底讲透这个问题。