Index
2026-09-14 — Analysis

LingBot-VA 부진 원인 진단 — 학습 궤적이 이상했나, 부족했나

FurnitureBench one_leg | stock 스크립트 데모 344 ep 정량 분석 + 학습 곡선 + 입력 제약

TL;DR

0.157
LingBot one_leg (8/51)
0.36
pi0.5 b128 (같은 데이터)
≈0.5
stock 데모 정책 상한
73 %
삽입+나사 프레임 비율
291×
에피소드당 반복 횟수

1 배경 / 목적

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이다. 질문: 학습 궤적(데모)이 이상했나, 아니면 양이 부족했나.

기존 한계: 260905/260908 분석은 모델·전처리(클립) 쪽만 다뤘고, 데모 궤적 자체의 구조(구간 비율·반복·회전 크기·길이 편차)는 정량화한 적이 없었다.

2 분석 방법

코드 변경 없음. 기존 산출물만 읽어 정량화했다.

3 결과 — 데모 궤적 구조

항목값
에피소드 길이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 %
그리퍼 토글/epmedian 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
무동작 step0 %
재시도 꼬리상위 10 % (650–780 step, 토글 19–21) = 나사 사이클 2배
해석: 데모 정책의 삽입 성공은 22.7° 어트랙터 좌석 등 운에 좌우되고(v2 분석, 260911), 성공분만 모았으므로 "같은 동작을 하고 운을 기다리는" 궤적이다. 성공 여부를 가르는 복구 동작이 데모에 없다.
224 vs 128 front/wrist frames
열: front 224² | front 128²(LingBot 입력) | wrist 224² | wrist 128². 행: 프레임 150/200/235/300(이동→삽입→나사). front 128²에서 베이스 구멍은 수 픽셀, wrist는 윤곽이 남음.

4 결과 — 학습량과 loss vs 성공률

steplatent lossaction loss성공률
0–2490.1100.02940/10 (step 400, phase 1.70)
2000–22490.0780.01390/10 (phase 2.80)
3000–32490.0690.01062/10 = 0.20
4750–49990.0570.00748/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은 측정된 적이 없다.

loss 단조 감소 + 성공률 정체는 일반화가 아니라 암기 쪽 신호. 다만 n=10 중간 평가는 0.13 수준을 판별 못 하므로 3000→5000 "정체"도 노이즈 범위 안이다.

5 결과 — 실패 위치와 데모 상한 대비

정책one_leg 성공률데모 상한(≈0.5) 대비실패 위치
stock 스크립트(데모 출처)0.45 (t600) / 0.53 (t1000)—삽입/나사 timeout
pi0.5 b128 40k18/50 = 0.36≈70 %phase 3 다수
pi0.5 one_leg 30k12/50 = 0.24≈48 %38 실패 중 26 phase 3
LingBot one_leg 50008/51 = 0.157≈31 %43 실패 중 32 phase 3 (13개 ≤5 cm)
LingBot all_low fix 40004/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 %를 차지하는 바로 그 구간이다.

6 Takeaway

결론: "이상한 궤적"이 아니라 낮은 품질 + 적은 양 + LingBot 입력 제약의 합

  1. 궤적이 잘못된 것은 아니다. 같은 데이터로 pi0.5 0.36, teacher-forced MAE 정상. 유일한 결함은 데이터가 아닌 LingBot 전처리 클립(수정 완료).
  2. 궤적 품질이 낮다. 성공률 ≈0.5 정책의 성공분만이라 어떤 BC 모델도 상한이 데모 정책에 묶인다. pi0.5는 그 70 %, LingBot은 30 %.
  3. 양이 부족하다. 344 ep × 291회 반복, loss 감소 vs 성공률 정체.
  4. LingBot 격차 원인: 128² 입력, proprio 없음(stock 나사 사이클의 놓기/재파지 타이밍은 q7 관절 한계 기반 → 이미지로 안 보임; pi0.5는 EE pose/속도/그리퍼 폭 수신), LIBERO 레시피(lr 1e-5, 유효 20, 5000 step) 그대로.

7 Next