Index
2026-08-12 — Research

τ₀-WM (VAM) vs X-WAM — 코드 레벨 아키텍처 비교

tau-0-wm | VAM naive 성능 측정을 위한 사전 분석

TL;DR

0.51B
τ₀ action expert
19M
X-WAM action path
5 vs 10
denoise steps
61.0%
비교 앵커 (arm A)

1 배경 / 목적

τ₀-WM VAM의 나이브한 성능(TTC 없이 기본 posttrain + 기본 추론)을 X-WAM 재현 실험(RoboCasa arm A 61.0% / arm B 66.0%)과 나란히 놓을 baseline으로 측정하려 한다. 공정 비교 조건을 설계하려면 두 모델의 차이를 코드 레벨에서 먼저 확정해야 한다.

주의: 두 리포 모두 Wan2.2-TI2V-5B 기반이라 겉보기엔 유사하지만, action–video 결합 방식과 추론 경로가 근본적으로 다르다. "VAM naive vs X-WAM"은 단일 변수 비교가 아니다.

2 핵심 차이 비교표

τ₀-WM (VAM)X-WAM
action 예측별도 30-layer dim-1024 action expert (0.51B, 9%). 매 레이어 video hidden에 cross-attn, video→action 단방향action 32 + proprio 9 토큰을 video 720 토큰과 한 시퀀스로 joint self-attn. MLP enc/dec 19M (0.3%)
state 주입clean 토큰 1개 prepend (t=0)proprio도 denoise 출력 모달리티, token 0만 clean pin
학습 timestepvideo/action 독립 (UniPC s5.0 / Euler s1.0)ANS: 50% clean-action 조건화, 50% video>action 노이즈 커플링 (Beta)
정책 추론video tower t=1000 고정 1 forward → hidden 캐시 → action expert 5 Euler step10-step joint denoise 후 early stop (6.7B×10 forward)
depth/3D없음1.64B depth branch (x0 회귀, 정책 추론 시 미실행)
multi-viewlatent width concat (v w)토큰 시퀀스 interleave + learned view embedding
TTCN proposals + RCS + 옵션 simulator reward re-rank없음
부속 모델5.9B action-conditioned simulator (reward expert 포함)없음
action spacepretrain 20ch rel-eef6d / posttrain 예시 7ch abs-joint, chunk 33, z-score14ch (RoboCasa는 raw_actions), chunk 32, q01/q99→[−1,1]
해상도192×256, 9f256×320, 9f
평가 코드전무 (websocket 서버만)RoboCasa/RoboTwin harness 완비 (zmq)
근거 파일 (τ₀): models/wan_2_2_models/transformers/model.py:574-592,760-792 (action expert) models/wan_2_2_models/pipeline/textimage2video.py:441-529 (1-pass video + 5-step action) runner/posttrain.py:744-835 (독립 timestep, loss 1:1) / textimage2video_ttc.py (TTC) 근거 파일 (X-WAM): modules/wan_model.py:627 (token concat), 649 (per-token t) runners/xwam_runner.py:322-365 (ANS), 680-759 (10/50 step + early stop)

3 세부 발견

τ₀ config artifact: 모든 VAM YAML에 window_size: [-1, 1] — SDPA는 무시하지만 flash-attn 경로에서는 실제 sliding window로 작동. 서버 기본은 sdpa라 배포엔 무해하나 학습 attention 구현 확인 필요.
비디오가 action에 기여하는 방식이 다름: τ₀ 추론의 video feature는 t=1000 고정이라 사실상 "관측+노이즈"의 함수 — 미래 비디오를 denoise한 표현이 아니다. 생성 비디오가 action에 실제로 영향을 주는 경로는 TTC의 simulator re-rank뿐. X-WAM은 앞 10 step 동안 video·action이 같은 시퀀스에서 서로를 본다.
공통점: 정책 추론 시 둘 다 비디오를 decode하지 않고, action chunk(33/32 step)를 open-loop 실행. TI2V frame-0 latent replacement + per-token timestep 조건화도 동일.

4 Takeaway

의미

"VAM naive vs X-WAM"은 사실상 세 축의 동시 비교다: ① action expert(cross-attn 0.5B) vs in-sequence token(19M), ② video 1-pass feature vs 10-step joint denoise, ③ (arm B 대비 시) depth 유무. 따라서 비교 앵커는 X-WAM arm A (no depth, 61.0%, eff 128 / lr 3e-5 / 20k, base-Wan init)로 잡고, VAM도 base-Wan init + RoboCasa + 유사 예산 posttrain + TTC off + 5-step 추론을 "naive" 조건으로 정의하는 것이 맞다.

5 Next Steps

평가 경로 구축 (τ₀에 없음)

① RoboCasa demo → LeRobot/자체 dataset 변환 + data YAML + stat JSON (scripts/compute_stat.py), ② X-WAM zmq eval ↔ τ₀ websocket 서버 브릿지. raw controller action 12ch를 τ₀의 action_type×action_space 조합으로 표현 가능한지 확인.

비교 조건 결정

해상도(192×256 vs 256×320)·chunk(33 vs 32)를 τ₀ 기본값으로 둘지(naive) X-WAM에 맞출지(통제). 우선 naive부터. 학습 예산은 step 매칭 vs sample 매칭 결정 필요 (τ₀ 기본 bs12/GPU vs X-WAM eff 128).