allex-eef-N-robotonly-h40rel โ€” horizon 40 / ์†๋ชฉ relative / ์Šฌ๋กฏ 35

ALLEX RLDX-1 mid-train. allex-eef-N-robotonly-h16 ์—์„œ ๋‹ค์„ฏ ๊ฐ€์ง€๋ฅผ ๋ฐ”๊พผ ๋Ÿฐ์ด๋‹ค.

robotonly-h16 ์ด ๋ฆฌํฌ
action horizon 16 40
์†๋ชฉ 2ํ‚ค ABSOLUTE / NON_EEF RELATIVE / EEF / XYZ_ROT6D
embodiment ์Šฌ๋กฏ 0 (GENERAL) 35 (NEW_EMBODIMENT)
random_crop_fraction ์—†์Œ 0.8984375
ํŒจ๋”ฉ dim ๋…ธ์ด์ฆˆ ์ „ 64 dim ์•ž 50 dim ๋งŒ

๊ตฌ์กฐ

๊ฒฝ๋กœ step
checkpoint-10000/ 10,000 (ํ•™์Šต ์ง„ํ–‰ ์ค‘, 60k ๋ชฉํ‘œ)
from huggingface_hub import snapshot_download
snapshot_download("jungwook2358/allex-eef-N-robotonly-h40rel",
                  allow_patterns="checkpoint-10000/*")

action 50D โ€” ๋‘ ๊ทœ์•ฝ์ด ํ•œ ๋ฐฐ์—ด์— ์„ž์—ฌ ์žˆ๋‹ค

idx  ํ‚ค                      ์ฐจ์›  ํ‘œํ˜„
 0   left_wrist_wrt_base       9   RELATIVE / EEF / XYZ_ROT6D   (xyz 3 + rot6d 6)
 1   right_wrist_wrt_base      9   RELATIVE / EEF / XYZ_ROT6D
 2   left_hand_joints         15   ABSOLUTE / NON_EEF
 3   right_hand_joints        15   ABSOLUTE / NON_EEF
 4   neck_joints               2   ABSOLUTE / NON_EEF

waist ๋Š” ์ œ์™ธ. ํ•ฉ 50D. (max_action_dim 64 ๊นŒ์ง€ ์ œ๋กœํŒจ๋”ฉ)

์†๋ชฉ ์ƒ๋Œ€ํ™”

๊ธฐ์ค€ ํ”„๋ ˆ์ž„์€ ์ฒญํฌ๋‹น ํ•˜๋‚˜ โ€” state[key][-1], ์ฆ‰ ํ˜„์žฌ ์‹œ๊ฐ t ์˜ ์†๋ชฉ state. 40์Šคํ… ์ „์ฒด๊ฐ€ ๊ฐ™์€ ๊ธฐ์ค€์„ ์“ด๋‹ค (์Šคํ…๋งˆ๋‹ค ๋ฐ”๋€Œ๋ฉด DELTA ์ด๊ณ , ์ด ๋Ÿฐ์€ RELATIVE).

T_rel[i] = inv(T_ref) @ T_abs[i]          # SE(3), ์›์†Œ๋ณ„ ๋บ„์…ˆ์ด ์•„๋‹ˆ๋‹ค
xyz   = T_rel[:3, 3]
rot6d = R_rel[:2, :].flatten()            # ํšŒ์ „ํ–‰๋ ฌ์˜ ์ฒซ ๋‘ 'ํ–‰'

rot6d ๋””์ฝ”๋“œ๋Š” ๊ทธ๋žŒ-์Šˆ๋ฏธํŠธ๋กœ ์ •๊ทœ์ง๊ตํ™”ํ•œ๋‹ค.

์ถ”๋ก  ์‹œ ๋ฐ˜๋“œ์‹œ ์—ญ๋ณ€ํ™˜ํ•  ๊ฒƒ: T_abs[i] = T_ref @ T_rel[i], ๊ธฐ์ค€์€ ๊ทธ ์‹œ์  ๊ด€์ธก๋œ ์†๋ชฉ state. ์•ˆ ํ•˜๋ฉด ์†๋ชฉ์ด ์›์  ๊ทผ์ฒ˜์— ๋จธ๋ฌธ๋‹ค.

์ •๊ทœํ™” โ€” ์†๋ชฉ๊ณผ ๋‚˜๋จธ์ง€๊ฐ€ ๋‹ค๋ฅด๋‹ค

ํ‚ค ํ†ต๊ณ„ ์ถœ์ฒ˜ ํผ์„ผํƒ€์ผ
์†๋ชฉ 2ํ‚ค relative_action (meta/relative_stats.json) q0.1% / q99.9%
์†ยท๋ชฉ 3ํ‚ค action q1% / q99%

์‹์€ ๊ณตํ†ต 2*(x - q01)/(q99 - q01) - 1 ํ›„ clamp(-1, 1).

โš ๏ธ ์ƒ๋Œ€ํ†ต๊ณ„์˜ ํ‚ค ์ด๋ฆ„์ด ๊ฑฐ์ง“๋ง์„ ํ•œ๋‹ค. q01/q99 ๋ผ๋Š” ์ด๋ฆ„ ์•ˆ์— q0.1%/q99.9% ๊ฐ’์ด ๋“ค์–ด ์žˆ๋‹ค. ์‹ค์ œ ํผ์„ผํƒ€์ผ์€ _percentiles ํ•„๋“œ๋กœ ํ™•์ธํ•  ๊ฒƒ. โš ๏ธ ์ƒ๋Œ€ํ†ต๊ณ„๋Š” (40, 9) ๋กœ ์Šคํ…๋ณ„ ๋ฐ”์šด๋“œ๋‹ค. horizon ์ด ๋‹ค๋ฅด๋ฉด ์“ธ ์ˆ˜ ์—†๋‹ค.

ํ†ต๊ณ„๋Š” checkpoint-*/experiment_cfg/dataset_statistics.json ๊ณผ checkpoint-*/processor/statistics.json ์— ๋“ค์–ด ์žˆ๋‹ค. ๋‹ค๋ฅธ ๋Ÿฐยท๋‹ค๋ฅธ ์ฒดํฌํฌ์ธํŠธ์˜ ํ†ต๊ณ„๋ฅผ ๊ฐ–๋‹ค ์“ฐ์ง€ ๋ง ๊ฒƒ.

ํŒจ๋”ฉ dim ๋…ธ์ด์ฆˆ ์ฐจ๋‹จ (action_noise_mask_dim=50)

RLDX ๋Š” action ์„ 64๊นŒ์ง€ ์ œ๋กœํŒจ๋”ฉํ•˜๊ณ  ์ „ dim ์— flow-matching ๋…ธ์ด์ฆˆ๋ฅผ ์ฃผ๋ฉด์„œ ํŒจ๋”ฉ dim ์˜ loss ๋Š” ๋งˆ์Šคํ‚นํ•œ๋‹ค. ๊ทธ dim ์˜ velocity ๋Š” ํ•œ ๋ฒˆ๋„ ํ•™์Šต๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ถ”๋ก  ODE ์—์„œ ๋…ธ์ด์ฆˆ๊ฐ€ ์ค„์ง€ ์•Š๊ณ  ์‹ค์ œ ๊ด€์ ˆ๋กœ intra-chunk jitter ๊ฐ€ ์ƒŒ๋‹ค.

์ด ๋Ÿฐ์€ ํ•™์Šต์—์„œ noise[..., 50:] = 0, ์ถ”๋ก ์—์„œ ์ดˆ๊ธฐ ๋…ธ์ด์ฆˆ์™€ ๋งค Euler step ์งํ›„ actions[..., 50:] = 0 ์œผ๋กœ ๋ง‰๋Š”๋‹ค. ๊ฐ’์ด config.json ์— ๋ฐ•ํ˜€ ์žˆ์–ด ์ถ”๋ก  ์‹œ ๋ณ„๋„ ํ”Œ๋ž˜๊ทธ๊ฐ€ ํ•„์š” ์—†๋‹ค โ€” ๋‹จ, ๊ทธ ์ฒ˜๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•œ ์ฝ”๋“œ๋กœ ์ถ”๋ก ํ•ด์•ผ ํ•œ๋‹ค.

embodiment ์Šฌ๋กฏ 35

new_embodiment. ๋ฒ ์ด์Šค ๋ชจ๋ธ์—์„œ ์ด ์Šฌ๋กฏ์€ std ๊ฐ€ init ๊ฐ’ 0.02 ๊ทธ๋Œ€๋กœ์ด๊ณ  L2 ๊ฐ€ 36์Šฌ๋กฏ ์ค‘ ์ตœ์†Œ์ธ ์‚ฌ์‹ค์ƒ ๋žœ๋ค ์ดˆ๊ธฐํ™” ์Šฌ๋กฏ์ด๋‹ค (์Šฌ๋กฏ 0 ์€ ๋ฐ˜๋Œ€๋กœ ๋…ธ๋ฆ„ ์ตœ๋Œ€ = ํ”„๋ฆฌํŠธ๋ ˆ์ธ ์ตœ๋‹ค ํ•™์Šต). ํ”„๋ฆฌํŠธ๋ ˆ์ธ ํŽธํ–ฅ์ด ์—†๋Š” ๋Œ€์‹  ๋งจ๋ฐ”๋‹ฅ๋ถ€ํ„ฐ ํ•™์Šตํ•œ๋‹ค.

๊ทธ ์™ธ ์„ค์ •

  • base RLWRLD/RLDX-1-PT-IMG, --override-pretraining-statistics
  • ๊ธ€๋กœ๋ฒŒ ๋ฐฐ์น˜ 256 (4 GPU ร— per-device 64, accum 1), lr 1e-4, 60,000 ์Šคํ…
  • ์นด๋ฉ”๋ผ 2๋Œ€ (ego left/right), 256ร—256 โ†’ ๋žœ๋ค ํฌ๋กญ 230ร—230 โ†’ 256 ๋ณต์› โ†’ color jitter (image_max_area 65536, image_resize_m 32, jitter 0.6/0.6/0.6/0.16)
  • video_length 1, state_dropout 0.3
  • VLM ๋™๊ฒฐ (tune_llm=False, tune_visual=False, tune_top_llm_layers=0)
  • ๋ฐ์ดํ„ฐ: robot allex v1~v6 ๋งŒ (์‚ฌ๋žŒ ๋ฐ์ดํ„ฐ ์—†์Œ)
  • CogAlign ์—†์Œ, ํ† ํฌ๋‚˜์ด์ € latent ์—†์Œ (arm N)

์ถ”๋ก ์— ์“ฐ์ด์ง€ ์•Š๋Š” ํ•™์Šต ์ƒํƒœ(global_step*/, optimizer.pt, scheduler.pt, rng_state_*.pth, training_args.bin, zero_to_fp32.py)๋Š” ์˜ฌ๋ฆฌ์ง€ ์•Š์•˜๋‹ค.

์ฝ”๋“œ

  • Stage-2: jungwook235/RLDX-1-egopi branch feat/allex-eef-h16-midtrain (fc7a000)
    • modality config: run_scripts/train/allex_eef/allex_eef_h40_rel_newemb_config.py
  • ์ œ์ถœ ์Šคํฌ๋ฆฝํŠธ: jungwook235/action-tokenizer (698a172)
    • gpu26-server/submit/allex_eef_run5_base_robotonly_h40rel.sh
    • ์ƒ๋Œ€ํ†ต๊ณ„ ์ƒ์„ฑ: gpu26-server/submit/allex_gen_rel_stats_one.sh

โš ๏ธ action_dim ์ด 48 ์ด ์•„๋‹ˆ๋ผ 50 ์ด๋‹ค.

Downloads last month

-

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