Cosmos3-Edge-Policy-DROID โ FastWAM-K2 + IsaacSim (v6), step 12000
K=2 leading-K ์ฒดํฌํฌ์ธํธ(โฆ-FastWAM-K2/step12000)์์ warm startํด IsaacSim Franka ๋ฐ์ดํฐ๋ฅผ
์์ด ๊ณ์ ํ์ตํ arm์ ์ค๊ฐ ์ฒดํฌํฌ์ธํธ์
๋๋ค. ์ด ๋ฐ์ 12000 iter ์ค 100% ์ง์ ์ด๋ฉฐ
(K=2 arm์ 12,000 iter๋ฅผ ๋ํ๋ฉด ๋์ 12000+12,000), ํ๊ฐ์ฉ ์ค๋
์ท์ด์ง ์ต์ข
์ฐ์ถ๋ฌผ์ด ์๋๋๋ค.
- step๋ณ ํ์ ํด๋(
step12000/)์ ๋์ . ๋ฃจํธ README๋ ์ต๊ทผ step์ ๊ฐ๋ฆฌํต๋๋ค. - EMA ๊ฐ์ค์น ๊ธฐ์ค export, training state ์์ โ pretrained model ํ์ผ๋ง.
โ ๏ธ ์๋น ์ ํ์ ์ธ์
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 ์ด ์๋
K=2 ์ ์ฅ์์ ๋์ผํ ์ํ์ค(conditioning ํ๋ ์ + ์ ํ ์์ฑ 2 latent ํ๋ ์, ํ๋ ์๋น 340 ํ ํฐ, ์ํ์ค 1,211)์ ๋๋ค.
์ด arm์ด ๋ฌป๋ ๊ฒ
K=2 arm์ ๋ต์ ๋์ต๋๋ค: nvidia base์์ K=2๋ก 12k ํ์ตํ๋ฉด RoboLab 12ํ์คํฌ 34.4% [26.2, 42.6]๋ก baseline 36.5%์ ๊ตฌ๋ถ๋์ง ์๊ณ (p=0.88) ์ฝ 2.4๋ฐฐ ๋น ๋ฆ ๋๋ค. ๋จ์ ์ฒ์ฅ์ base ์์ฒด์ ๋๋ค โ 12ํ์คํฌ ์ค 5๊ฐ๋ full-WAM base์์๋ 0%(BlocksInBin, CondimentsInBin, SpoonInMug, Stack3RubiksCube, FruitsMoving). leading-K ํ์ต์ ๋ฅ๋ ฅ์ ์ ์งํ ๋ฟ ๋ํ์ง ๋ชปํฉ๋๋ค.
์ด arm์ K=2 ์ฒดํฌํฌ์ธํธ ์์ ์ด ํธ์คํธ์ ์๋ ์ ์ผํ ํ๊น ๋๋ฉ์ธ ๋ฐ์ดํฐ(IsaacSim Franka)๋ฅผ ๋ํด Isaac ๋ ๋๋งยท๋ก๋ด ๋๋ฉ์ธ ์ ์์ด RoboLab ์ ์๋ฅผ ์์ง์ด๋์ง๋ฅผ ๋ด ๋๋ค.
๊ธฐ๋์น๋ฅผ ์ ์งํ๊ฒ ์ ์ต๋๋ค. ์ฌ์ฉํ sim ํ์ open-cabinet-left / open-cabinet-right / open-drawer 3๊ฐ ํ์คํฌ์ด๊ณ RoboLab ํ์คํฌ(์ ๋ถ pick-and-place / stacking)์ ๊ฒน์น์ง ์์ต๋๋ค. ๋ฐ๋ผ์ ์ด arm์ ๋๋ฉ์ธ ์ ์์ ๊ฒ์ฆํ ์ ์์ง๋ง ํ์คํฌ๋ฅผ ๊ฐ๋ฅด์น์ง๋ ๋ชปํฉ๋๋ค. 0% ํ์คํฌ๋ฅผ ์ฌ๋ฆฌ๋ ค๋ฉด RoboLab ๋๋ฉ์ธ์ ํด๋น ํ์คํฌ ์์ฐ์ด ํ์ํฉ๋๋ค.
๋ฐ์ดํฐ
| ํ | ๋น์จ | rank | ๋ด์ฉ |
|---|---|---|---|
| DROID | 3 | 0โ5 | nvidia/Cosmos3-DROID success + failure, ๊ณต์ keep_ranges_1_0_1 ํํฐ. failure๋ video ๋ชฉ์ ํจ์์๋ง ๊ธฐ์ฌ |
| sim | 1 | 6โ7 | nvidia/PhysicalAI-Robotics-Manipulation-SingleArm์ ๊ด์ ์ก์
์๋ธ์
3๊ฐ(Franka Panda, IsaacSim) 4,211 ep / 300,665 ํ๋ ์์ DROID ์คํค๋ง๋ก ๋ณํ. success๋ง |
RankPartitionedDataLoader๋ rank ๋จ์๋ก ๋ถํ ํ๋ฏ๋ก 8 GPU์์ 3:1์ DROID 6 rank, sim 2 rank
(์ํ์ 25%)์
๋๋ค. 3:1์ ๋ณด์์ ์ผ๋ก ์ก์ ์ด์ : sim ๋ก๋ด์ ํ๋ ์๋น ์ด๋๋์ด DROID
ํ
๋ ์คํผ๋ ์ด์
์ ์ฝ 6๋ฐฐ(0.0386 vs 0.0061 rad)์ด๊ณ joint[4]๊ฐ ํ๋ ์์ 14.8%์์ DROID
์ ๊ทํ ๋ฒ์ ๋ฐ์
๋๋ค. ๋ณํ๊ธฐ๋ ์์ค์ ๊ด์ ๋ธํ๋ฅผ ์ ๋ ๋ชฉํ๊ฐ์ผ๋ก ์ ๋ถํ์ต๋๋ค.
ํ์ต ์ค์
| ํญ๋ชฉ | ๊ฐ |
|---|---|
| experiment | action_policy_droid_edge_ft_fastwam_v2 + optimizer.lr=1e-5 + K override |
| K | two_pass_keep_generated_vision_frames=2 (๋ํผ hydra override) |
| ์์์ | geonmin-kim/Cosmos3-Edge-Policy-DROID-FastWAM-K2 step12000์ EMA ๊ฐ์ค์น (load_ema_to_reg), optimizer ์๋ก ์์ |
| two-pass | pass B action FM (action_loss_weight=10), pass A vision FM (loss_scale=1) |
| optimizer | FusedAdamW, lr 1e-5, ์ก์ ๋ธ๋ฆฟ์ง 3๊ฐ์ 5ร |
| scheduler | LambdaLinear, warm-up 1000, cycle 12000 (lr 1e-5@1k โ 8.36e-6@3k โ 5.91e-6@6k โ 3.45e-6@9k โ 1e-6@12k) |
| ๋ฐฐ์น | FSDP shard 8 ร 16 ร grad_accum 1 = 128 (K=2 arm์ 64) |
| ํ๋์จ์ด | B300 ร8 |
ํ๊ฐ ์ฃผ์
- loss ๊ณก์ ์ผ๋ก ํ์ ํ์ง ๋ง์ญ์์ค โ ๋งค์นญํ ๋ชฉ์ ํจ์๋ผ ๊ณก์ ์ด ํํํฉ๋๋ค.
- open-loop MAE๋ ์ด ํ๋ก์ ํธ์์ ์ธ ๋ฒ ๋ฐฉํฅ์ ๋ฐ๋๋ก ๊ฐ๋ฆฌ์ผฐ์ต๋๋ค. ํ์ ๊ธฐ์ค์ RoboLab์ ๋๋ค.
- 2ํ์คํฌ(RubiksCubesInBinยทStackYellowOnRed) ์คํฌ๋ฆฌ๋์ FastWAM ๊ฒฉ์ฐจ์ ํ๊ท ํ์ธ์ฉ์ ๋๋ค. ์ด arm์ ๊ฐ์ค(๋๋ฉ์ธ ์ ์)์ ๊ทธ ๋ ํ์คํฌ๋ก๋ ๋ณด์ด์ง ์์ผ๋ฏ๋ก 12ํ์คํฌ ์ ์ฒด๋ก ํ์ ํ์ญ์์ค.
- n=96์์ ยฑ9pp๋ ๋
ธ์ด์ฆ์
๋๋ค. ์ฒดํฌํฌ์ธํธ ๋น๊ต๋ ์ ์ ์ํ๋ง
(
--num-episodes-adaptive 200 --ci-pp-width 0.14)์ผ๋ก ํ์ญ์์ค.
Model tree for geonmin-kim/Cosmos3-Edge-Policy-DROID-FastWAM-K2-sim
Base model
nvidia/Cosmos3-Edge-Policy-DROID