Cosmos3-Edge-Policy-DROID โ€” FastWAM-K (๋ถ€๋ถ„ ๋น„์ „ ์œ ์ง€), step 12000

nvidia/Cosmos3-Edge-Policy-DROID(full WAM, RoboLab 36.5%)์—์„œ warm startํ•œ ๋ถ€๋ถ„ ๋น„์ „ ์œ ์ง€(leading-K) ์‹คํ—˜์˜ ์ค‘๊ฐ„ ์ฒดํฌํฌ์ธํŠธ์ž…๋‹ˆ๋‹ค. ๊ณ„ํš๋œ 12000 iter ์ค‘ 100% ์ง€์ ์ด๋ฉฐ, ํ‰๊ฐ€์šฉ ์Šค๋ƒ…์ƒท์ด์ง€ ์ตœ์ข… ์‚ฐ์ถœ๋ฌผ์ด ์•„๋‹™๋‹ˆ๋‹ค.

  • step๋ณ„ ํ•˜์œ„ ํด๋”(step12000/)์— ๋ˆ„์ . ๋ฃจํŠธ README๋Š” ์ตœ๊ทผ step์„ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค.
  • EMA ๊ฐ€์ค‘์น˜ ๊ธฐ์ค€ export, training state ์—†์Œ โ€” pretrained model ํŒŒ์ผ๋งŒ.

โš ๏ธ ์„œ๋น™ ์‹œ ํ•„์ˆ˜ ์ธ์ž

์ด ์ฒดํฌํฌ์ธํŠธ๋Š” conditioning ํ”„๋ ˆ์ž„ + ์„ ํ–‰ ์ƒ์„ฑ 2 latent ํ”„๋ ˆ์ž„์„ ์œ ์ง€ํ•˜๋„๋ก ํ•™์Šต๋์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ FastWAM ํ”Œ๋ž˜๊ทธ๋กœ ์„œ๋น™ํ•˜๋ฉด ํ•™์Šต๊ณผ ๋‹ค๋ฅธ ์‹œํ€€์Šค๊ฐ€ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

python -m cosmos_framework.scripts.action_policy_server_robolab \
    --checkpoint-path "$ckpt" --port 8000 \
    --format-prompt-as-json True --no-guardrails \
    --keep-generated-vision-frames 2        # โ† --drop-generated-vision ์ด ์•„๋‹˜

๊ต์ฐจ ํ˜ธ์ŠคํŠธ ํ•ฉ์˜ ๋ถˆ๋ณ€์‹: num_kept = (์‹ค์ œ conditioning prefix latent ํ”„๋ ˆ์ž„ ์ˆ˜) + K, ์‹ค์ œ ์ด latent ํ”„๋ ˆ์ž„ ์ˆ˜๋กœ ํด๋žจํ”„. ์œ ์ง€๋œ K ํ”„๋ ˆ์ž„์€ conditioned๊ฐ€ ์•„๋‹ˆ๊ณ  denoise ๋Œ€์ƒ์ž…๋‹ˆ๋‹ค(pack_vision_tokens๊ฐ€ plan์˜ condition_frame_indexes_vision์œผ๋กœ ๋งˆ์Šคํฌ๋ฅผ ๋งŒ๋“ค์–ด ํ”„๋ ˆ์ž„ 1..K๊ฐ€ mse_loss_indexes์— ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค) โ€” ์ถ”๋ก  ์‹œ ๋ฏธ๋ž˜ ground truth๊ฐ€ ์—†์œผ๋ฏ€๋กœ ๊ทธ๋ž˜์•ผ ๋ฐฐํฌ๊ฐ€ ์„ฑ๋ฆฝํ•ฉ๋‹ˆ๋‹ค.

์™œ K์ธ๊ฐ€

RoboLab 24 arm / 2,304 ์—ํ”ผ์†Œ๋“œ ๊ฒฐ๊ณผ, FastWAM(K=0)์˜ full-WAM ๋Œ€๋น„ ๊ฒฉ์ฐจ๋Š” ๊ท ์ผํ•œ ์—ดํ™”๊ฐ€ ์•„๋‹ˆ๋ผ ๊ตญ์†Œ์ ์ž…๋‹ˆ๋‹ค.

ํƒœ์Šคํฌ FastWAM (K=0) full WAM (K=8)
RubiksCubesInBin 3.1% 62.5%
StackYellowOnRed 6.2% 50.0%
UnstackRubiksCube 100% 87.5%
ToyInBin 29.7% 25.0%

์•ž์˜ ๋‘ ํƒœ์Šคํฌ๊ฐ€ 13.6%p ๊ฒฉ์ฐจ์˜ 8%p ์ด์ƒ์„ ์„ค๋ช…ํ•˜๊ณ , ๋’ค์˜ ๋‘˜์€ baseline์„ ๋„˜์Šต๋‹ˆ๋‹ค. ์žƒ์€ ๋‘ ํƒœ์Šคํฌ์˜ ๊ณตํ†ต์ ์€ ๋™์ผ ํ˜•ํƒœ ๋ฌผ์ฒด ์—ฌ๋Ÿฌ ๊ฐœ ์ค‘ ํŠน์ • ๊ฐœ์ฒด๋ฅผ ์ง€๋ชฉยท์กฐ์ž‘ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ ๋Šฅ๋ ฅ์€ full-WAM base์— ์žˆ๊ณ  K=0 ์ฒดํฌํฌ์ธํŠธ์—์„œ๋Š” ์ด๋ฏธ ํŒŒ๊ดด๋์œผ๋ฏ€๋กœ, base๋ฅผ nvidia๋กœ ์žก์•„ ๋˜์‚ด๋ฆฌ๋Š” ๋Œ€์‹  ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋ถ€์ˆ˜ ํšจ๊ณผ๋กœ K=8์ด ํ•™์Šต ์—†๋Š” ์•ต์ปค๊ฐ€ ๋ฉ๋‹ˆ๋‹ค(base ์ž์ฒด).

leading-K๋ฅผ ์”๋‹ˆ๋‹ค โ€” conditioning prefix + ์‹œ๊ฐ„์ ์œผ๋กœ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ƒ์„ฑ Kํ”„๋ ˆ์ž„. ๋“ฑ๊ฐ„๊ฒฉ ์ŠคํŠธ๋ผ์ด๋“œยท๋งˆ์ง€๋ง‰ K๊ฐœยทํ’€๋ง ์š”์•ฝ ํ† ํฐ์€ ๋‹ค๋ฅธ ๊ณก์„ ์„ ์ฃผ๋ฉฐ, ์ด ์ €์žฅ์†Œ์˜ ์ˆ˜์น˜๋Š” ์ „๋ถ€ leading-K์— ๋Œ€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. K=2๋Š” 4:1 ์‹œ๊ฐ„ ์••์ถ•์—์„œ 8 ํ”ฝ์…€ ํ”„๋ ˆ์ž„ = 32์Šคํ…/2.13์ดˆ action chunk์˜ ์•ž ~25%๋กœ, RoboLab ํด๋ผ์ด์–ธํŠธ๊ฐ€ chunk๋ฅผ ์†Œ์ง„ํ•˜๊ธฐ ์ „์— ์žฌ์š”์ฒญํ•˜๋Š” ๊ตฌ๊ฐ„์ž…๋‹ˆ๋‹ค.

ํ† ํฐ ์ˆ˜

ํŠธ๋žœ์Šคํฌ๋จธ์— ์‹ค์ œ๋กœ ๋“ค์–ด๊ฐ€๋Š” vision ํ† ํฐ์€ ํ”„๋ ˆ์ž„๋‹น 340์ž…๋‹ˆ๋‹ค.

K vision ํ”„๋ ˆ์ž„ vision ํ† ํฐ ์‹œํ€€์Šค ์ „์ฒด(์‹ค์ธก)
0 (FastWAM) 1 340 531
2 (์ด ์ €์žฅ์†Œ) 3 1,020 1,211
8 (full WAM) 9 3,060 3,251

์ „๋ถ€ RoboLab ์„œ๋ฒ„์—์„œ ํŒจํ‚น๋œ ์‹œํ€€์Šค๋ฅผ ์ง์ ‘ ๊ณ„์ธกํ•œ ๊ฐ’์ž…๋‹ˆ๋‹ค(2026-09-08). 340 ร— (K+1)์ด ๋ชจ๋“  K์—์„œ ์ •ํ™•ํžˆ ๋งž๊ณ , ์‹œํ€€์Šค ์ „์ฒด๋Š” ์—ฌ๊ธฐ์— text์™€ action 33์ด ๋”ํ•ด์ง„ ๊ฐ’์ž…๋‹ˆ๋‹ค (๊ทธ ์‹คํ–‰์˜ text๋Š” 158; ํ”„๋กฌํ”„ํŠธ ๊ธธ์ด์— ๋”ฐ๋ผ ๋ณ€ํ•ฉ๋‹ˆ๋‹ค โ€” ์ œ ํ•™์Šต ๋ฐฐ์น˜์—์„œ๋Š” 164์˜€์Šต๋‹ˆ๋‹ค). mse_loss_indexes๊ฐ€ ์ •ํ™•ํžˆ 340 ร— K์ด๊ณ  condition_mask๊ฐ€ ๋ชจ๋“  K์—์„œ 1์ด๋ผ๋Š” ๊ฒƒ๋„ ํ•จ๊ป˜ ํ™•์ธ๋์Šต๋‹ˆ๋‹ค โ€” ์œ ์ง€ํ•œ K ํ”„๋ ˆ์ž„ ์ „๋ถ€๊ฐ€ denoise ๋Œ€์ƒ์ด๊ณ  ์กฐ๊ฑด ํ”„๋ ˆ์ž„์€ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

391์ด ์•„๋‹Œ ์ด์œ  (ํŒŒ์ดํ”„๋ผ์ธ ๋‹จ๊ณ„ ๊ตฌ๋ถ„)

ํ•™์Šต dataloader์˜ video ํ…์„œ๋ฅผ ์‹ค์ธกํ•˜๋ฉด (3, 33, 544, 736)์ด๊ณ , ๊ทธ latent๋Š” 34ร—46 โ†’ patch_spatial=2 โ†’ 17ร—23 = 391์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ’ ์ž์ฒด๋Š” ๋งž์ง€๋งŒ ์‹œํ€€์Šค ํ† ํฐ ์ˆ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

540ร—640 (์›๋ณธ)
  โ†’ transform ๋ฐ˜์‚ฌ ํŒจ๋”ฉ        544ร—736   โ† ๋ฒ„ํ‚ท VIDEO_RES_SIZE_INFO['480']['4,3']
  โ†’ VAE (/16)                  latent 34ร—46   (= patch 391)
  โ†’ _remove_padding_from_latent  latent 34ร—40   โ† image_size=[544,736,540,640] ์˜ ์ฝ˜ํ…์ธ  ์˜์—ญ
  โ†’ pack_vision_tokens         17ร—20 = 340/ํ”„๋ ˆ์ž„   โ† ํŠธ๋žœ์Šคํฌ๋จธ ์ž…๋ ฅ

ํŒจ๋”ฉ์€ VAE์— ํ†ต๊ณผ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ์ž„์‹œ ์บ”๋ฒ„์Šค์ด๊ณ  ํŒจํ‚น ์ „์— ์ œ๊ฑฐ๋ฉ๋‹ˆ๋‹ค (omni_mot_model.py์˜ get_data_and_condition() ์•ˆ, data_batch["image_size"]๊ฐ€ ์žˆ์„ ๋•Œ). ๊ทธ ํ•จ์ˆ˜๋Š” ํ•™์Šตยท์ถ”๋ก ์ด ๊ณต์œ ํ•˜๋ฏ€๋กœ ์–‘์ชฝ ๋‹ค 340์œผ๋กœ ํŒจํ‚น๋ฉ๋‹ˆ๋‹ค โ€” ๋ถˆ์ผ์น˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ํ•™์Šต ๋ฐฐ์น˜์— image_size = [544., 736., 540., 640.]๊ฐ€ ์‹ค์ œ๋กœ ๋“ค์–ด ์žˆ๋Š” ๊ฒƒ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์› ๋ชจ๋ธ ์นด๋“œ์˜ "ํ”„๋ ˆ์ž„๋‹น 340 / 9ํ”„๋ ˆ์ž„ 3,060"์€ ์˜ณ์Šต๋‹ˆ๋‹ค. ์ด ์ €์žฅ์†Œ์˜ ์ด์ „ ๋ฒ„์ „์ด 391๋กœ ์ ์—ˆ๋˜ ๊ฒƒ์€ ํŒŒ์ดํ”„๋ผ์ธ ๋‹จ๊ณ„๋ฅผ ๋ช…์‹œํ•˜์ง€ ์•Š์•„ ์บ”๋ฒ„์Šค ๊ธฐ์ค€ ๊ฐ’์„ ์‹œํ€€์Šค ํ† ํฐ ์ˆ˜๋กœ ์“ด ๊ฒƒ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์นด๋“œ์˜ text 128๋งŒ ์‹ค์ธก(158~164, ํ”„๋กฌํ”„ํŠธ ์˜์กด)๊ณผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

ํ•™์Šต ์„ค์ •

ํ•ญ๋ชฉ ๊ฐ’
experiment action_policy_droid_edge_ft_fastwam_v1lr + optimizer.lr=1e-5 + K override
K two_pass_keep_generated_vision_frames=2
base nvidia/Cosmos3-Edge-Policy-DROID (DCP ๋ณ€ํ™˜), ๊ฐ€์ค‘์น˜๋งŒ
two-pass pass B action FM (action_loss_weight=10), pass A vision FM (loss_scale=1)
๋ฐ์ดํ„ฐ DROID success + failure, keep_ranges_1_0_1 (sim ์—†์Œ)
optimizer FusedAdamW, lr 1e-5, ์•ก์…˜ ๋ธŒ๋ฆฟ์ง€ 3๊ฐœ์— 5ร—
scheduler LambdaLinear, warm-up 1000, cycle 12000 โ€” ์ „ ๊ตฌ๊ฐ„ ํ•™์Šต (lr 1e-5 โ†’ 8.36e-6@3k โ†’ 5.91e-6@6k โ†’ 3.45e-6@9k โ†’ 1.0e-6@12k)
ํ•˜๋“œ์›จ์–ด B300 ร—2, FSDP shard 2, grad_accum 2 โ†’ ๊ธ€๋กœ๋ฒŒ ๋ฐฐ์น˜ 64

ํ‰๊ฐ€ ์ฃผ์˜

  • loss ๊ณก์„ ์œผ๋กœ ํŒ์ •ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค โ€” ๋งค์นญํ˜• ๋ชฉ์ ํ•จ์ˆ˜๋ผ ๊ณก์„ ์ด ํ‰ํƒ„ํ•ฉ๋‹ˆ๋‹ค.
  • open-loop MAE๋Š” ์ด ํ”„๋กœ์ ํŠธ์—์„œ ์„ธ ๋ฒˆ ๋ฐฉํ–ฅ์„ ๋ฐ˜๋Œ€๋กœ ๊ฐ€๋ฆฌ์ผฐ์Šต๋‹ˆ๋‹ค. ํŒ์ • ๊ธฐ์ค€์€ RoboLab์ž…๋‹ˆ๋‹ค.
  • 2ํƒœ์Šคํฌ(RubiksCubesInBinยทStackYellowOnRed) ร— 8 ์—ํ”ผ์†Œ๋“œ ์Šคํฌ๋ฆฌ๋‹์€ ํŒ๋ณ„์šฉ์ด๋ฉฐ ๋ฒค์น˜๋งˆํฌ ์ ์ˆ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์–‘์„ฑ์ด๋ฉด 12ํƒœ์Šคํฌ ์ „์ฒด ํ™•์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • n=96์—์„œ ยฑ9pp๋Š” ๋…ธ์ด์ฆˆ์ž…๋‹ˆ๋‹ค. ์ฒดํฌํฌ์ธํŠธ ๋น„๊ต๋Š” ์ ์‘ ์ƒ˜ํ”Œ๋ง (--num-episodes-adaptive 200 --ci-pp-width 0.14)์œผ๋กœ ํ•˜์‹ญ์‹œ์˜ค.
Downloads last month

-

Downloads are not tracked for this model. How to track
Video Preview
loading

Model tree for geonmin-kim/Cosmos3-Edge-Policy-DROID-FastWAM-K2

Finetuned
(3)
this model