訓練日期 2026-06-02 · 5090-2 GPU0 · MobileNetV3-L partial-label BCE · cvat #12 +17 task(含 IRODA-AI 新場域)· 修 export 超時丟 task bug 重跑
v601 首次訓練 val_mAP 只有 0.927(vs v530 0.968,退 4pp)。根因不是模型——是 export 對 cvat annotations 抓取超時時靜默跳過整個 task(無 retry,except: continue)。這次靜默丟了 2 個 task:task 2132(8005 個 Train crop) + task 5203(當天新加的 IRODA-AI val 場域),兩個在 cvat 都還在、completed、subset 正常。
修法:export 抓 ann/meta 改成 retry 4 次 + 退避,全失敗就中止整批(fail-loud,寧可重跑也不靜默缺資料)。v601b re-export 0 超時,2132/5203 全回來,manifest 186,796 row(207 task)比 v530 還多。
| attr | v530 AP | v601b AP | Δ |
|---|---|---|---|
| sleeves | 0.676 | 0.826 | +15.0pp |
| cotton_gloves | 0.752 | 0.869 | +11.7pp |
| hair_cover | 0.851 | 0.634 | −21.7pp |
| face_mask | 0.981 | 0.977 | −0.4 |
| full_face_mask | 0.989 | 0.989 | = |
| aluminized_apron | 1.000 | 1.000 | = |
| 整體 val_mAP | 0.9679 | 0.9626 | −0.5pp(variance 內) |
sleeves / cotton_gloves 大幅改善(一直是弱點,新資料補到位)。整體 mAP 跟 v530 同級。
hair_cover AP 0.851→0.634 是唯一隱憂,但有幾個訊號指向 tiny-sample variance 而非結構性退步:
處置:v601b 上成 ppe22_v601b 並列觀察(production 主力 ppe22_v521 不動),hair_cover 單獨追蹤——後續補 hair_cover 正樣本或重跑一輪驗 variance,再決定是否升 production。
backbone: mobilenetv3_large_100.ra_in1k, partial-label BCE (unknown mask=0) crop 訓練 imgsz: 384×192 (pad 0.15) cascade person 推論 imgsz: 1280(場域遠景小目標,固定值非讀訓練 640) epochs: 40, early-stop ep25, patience 16 manifest: crops_v601b(cvat #12 全 207 task / 186,796 crops,含 IRODA-AI 新場域 5192-5213) # 沿用 v530 設定,差異僅資料(+17 task + 修 export 丟 task bug)