标注规范写的是画面里出现目标就要标,实际执行时两人对边缘只露一半的目标判断不同,两千条里差了二百条,训出来的检测器对小目标召回明显偏低,重训两次都没有改善。
一开始怀疑是「复核只抽中间区域,边缘目标基本没人看」,查了一圈,方向不对。
把日志和配置对完,能解释这个现象的基本就这几处。规范只写了包含即标,没有定义最小可见比例。少数情况下是边界样本没有单独抽样,两人各按自己理解处理。
另外,评测集里同类样本太少,指标反映不出来。
先把两人的分歧样本全部拉出来
python diff_labels.py --a rater_a.json --b rater_b.json --out disagree.json
然后按可见面积比例分桶统计分歧率
python bucket.py --in disagree.json --by visible_ratio --bins 0.2,0.4,0.6,0.8
随后在规范里补上最小可见比例并发布
python publish_guide.py --version 4 --rule min_visible_ratio=0.3
等前面都确认过,再用新规范重标一批分歧样本验证
python relabel.py --in disagree.json --guide v4 --out fixed.json
改完先别撤,确认这几项。可见比例低于三成的样本两人判断一致,分歧条数从二百降到三十以内,小目标召回提升六个点。
边界样本的分歧通常来自规范缺一条可量化的阈值,补比例比反复强调认真标有效。同一份配置在测试环境跑通,不代表线上没事,两边的默认值经常不一样。
