LingBot-VA one_leg는 단독 5000 step에서 8/51 = 0.157, all_low 클립 수정본에서 4/30 = 0.133. 같은 데이터로 학습한 pi0.5는 0.24(단독) / 0.36(b128)이고, 데모를 만든 stock 스크립트 정책 자체는 0.45–0.53이다. 질문: 학습 궤적(데모)이 이상했나, 아니면 양이 부족했나.
코드 변경 없음. 기존 산출물만 읽어 정량화했다.
tmp/demo_stats_one_leg.py — LeRobot parquet 344 ep(액션·상태만 로드): 길이, 그리퍼 토글, 회전 크기, 무동작 비율.tmp/skill_segments.py — raw pkl 38 ep의 skills 마커로 5구간(파지/들기/이동/삽입/나사) 길이.tmp/parse_lingbot_loss.py — 학습 slurm 로그의 latent/action loss를 250 step 평균.wan_va_server.py:582에서 모델 입력 확인(obs['state'] = 직전 액션, proprio 없음).| 항목 | 값 |
|---|---|
| 에피소드 길이 | min 412 / p10 456 / median 486 / mean 509 / p90 654 / max 778 step |
| 스킬 구간 평균(std), 38 ep | 파지 39(3.5) / 들기 30(8) / 이동 69(9) / 삽입 93(7.5) / 나사 291(88) |
| 구간 비율 | 7.5 / 5.7 / 13.3 / 17.8 / 55.7 % → 삽입+나사 = 73.5 % |
| 그리퍼 토글/ep | median 13, mean 14.5, max 25 (13회: 213 ep, 15: 90, 21: 24, 23: 10) → 나사 사이클 4–10회 |
| 회전 명령 크기 | |rot|>0.5 rad 25.4 % / >1.0 rad 14.7 % / >1.5 rad 5.2 % of steps, max 1.99 rad |
| 무동작 step | 0 % |
| 재시도 꼬리 | 상위 10 % (650–780 step, 토글 19–21) = 나사 사이클 2배 |
| step | latent loss | action loss | 성공률 |
|---|---|---|---|
| 0–249 | 0.110 | 0.0294 | 0/10 (step 400, phase 1.70) |
| 2000–2249 | 0.078 | 0.0139 | 0/10 (phase 2.80) |
| 3000–3249 | 0.069 | 0.0106 | 2/10 = 0.20 |
| 4750–4999 | 0.057 | 0.0074 | 8/51 = 0.157 |
샘플 = 에피소드 전체(action_config start 0 → end T). 5000 step × 유효 20 = 100k 샘플 = 344 ep 각 291회. e128 all_low도 3000 × 128 / 1304 ep = 295회. pi0.5 one_leg 30k × 32 윈도우 / 175k frame ≈ 5.5회. held-out split이 없어 overfitting은 측정된 적이 없다.
| 정책 | one_leg 성공률 | 데모 상한(≈0.5) 대비 | 실패 위치 |
|---|---|---|---|
| stock 스크립트(데모 출처) | 0.45 (t600) / 0.53 (t1000) | — | 삽입/나사 timeout |
| pi0.5 b128 40k | 18/50 = 0.36 | ≈70 % | phase 3 다수 |
| pi0.5 one_leg 30k | 12/50 = 0.24 | ≈48 % | 38 실패 중 26 phase 3 |
| LingBot one_leg 5000 | 8/51 = 0.157 | ≈31 % | 43 실패 중 32 phase 3 (13개 ≤5 cm) |
| LingBot all_low fix 4000 | 4/30 = 0.133 | ≈27 % | {2:3, 3:23, 4:4} |
| v2 스크립트(신규, 데모 미사용) | 59/60 = 0.983 | — | — |
110045 run(30 ep)만 보면 실패 26개 중 phase 3이 21개, 그중 leg_base_dist_min ≤ 0.03 m가 8개 — 구멍 근처까지 갔다가 삽입/나사에서 끝난다. 데모 프레임의 73 %를 차지하는 바로 그 구간이다.
scripts/lingbot/diagnose_action_head.py로 train 30 vs held-out 30 teacher-forced MAE. 2배 이상이면 overfitting 확정.