訓練日期 2026-05-29 · 5090-2 GPU1 · DINOv3 ViT-S/16 1280×720 RoI · cvat #10+#8 · export video-mode bug 修復
修好 export_safety_rope 的 video-mode bug(v3 用 meta["frames"] 漏掉 43 個 video task 的標註),manifest 從 27,162 → 31,768(+4,606)。test_AP 0.9135(vs v519 0.9170,−0.35pp 噪音內),recall 0.927(+6.4pp) / precision 0.801(−4.9pp)。⚠️ epochs 300 + OneCycleLR warmup 拖長、patience 16 在 ep24 早停(best @ ep08),收斂不如 v519 的 epochs 30 schedule —— 純設定問題,非資料問題。
| 版本 | 資料 | epochs | test_AP | F1 | P | R |
|---|---|---|---|---|---|---|
| v20260519 ⭐ | v3 原 | 30 | 0.9170 | 0.8562 | 0.850 | 0.863 |
| v20260529 | v4 新 | 300 | 0.9135 | 0.8596 | 0.801 | 0.927 |
| v20260529_ep30 | v4 新 | 30 | 0.8852 | 0.8226 | 0.760 | 0.897 |
數據上 v519 仍最佳。v529 持平(recall +6pp / precision −5pp),ep30 AP 退 3pp。三版並列釋出供場域實測(場域表現未必等同 test_AP)。
video fix 找回的 4,278 筆標註中 93.6% 全堆在 Train(Val/Test 各僅 ~120/169),且連續 frame 高度同質 → Train 被同場景灌入、train/test 分布偏移、稀釋原 image 擬合,反而拉低 AP。非 epochs 問題(ep30 跟 v519 同 schedule 仍退步)。後續方向:video 抽幀降採樣(每 N frame 抽 1)+ 補 Val/Test split 再訓。
v3 export 用 meta["frames"] iterate,但 video-mode task 的 meta["frames"] 只有 1 entry → if fi >= len(frames): continue 把該 task 大部分 shape 砍掉(如 task 4767 有 108 shapes 幾乎全漏)。v4 改用 cvat_frame_iter(cv2 解 mp4 逐 frame),找回 43 個 video task / 6122 frame 中的 4,278 筆有效標註。
backbone: vit_small_patch16_dinov3 (22.5M), img: 1280×720, RoI 外擴 1.0/0.2/1.5 batch: 8, epochs: 300 (early-stop @ ep24), patience: 16, lr: 1e-4 OneCycleLR aug: photometric (HSV/bright/contrast) + flip · partial-label (unknown mask=0) ※ 後續建議:epochs 30 (同 v519 schedule) 重訓,預期 video fix 資料能讓 AP 超過 v519