MAR โ€” SO-100 ์‹ค๋กœ๋ด‡ 4ํƒœ์Šคํฌ Continual Learning ์ฒดํฌํฌ์ธํŠธ (CVPR ์ œ์ถœ์šฉ)

SO-100/SO-101 ํŒ”(so_follower)์˜ ์กฐ์ž‘ ํƒœ์Šคํฌ 4๊ฐœ๋ฅผ ์ˆœ์ฐจ๋กœ ํ•™์Šตํ•œ DiT-Flow MT ์ •์ฑ… ์ฒดํฌํฌ์ธํŠธ์ž…๋‹ˆ๋‹ค. ํƒœ์Šคํฌ๊ฐ€ ๋๋‚  ๋•Œ๋งˆ๋‹ค ์ €์žฅํ–ˆ์œผ๋ฏ€๋กœ ๋ง๊ฐ์˜ ์ง„ํ–‰์„ ์ฒดํฌํฌ์ธํŠธ ๋‹จ์œ„๋กœ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ œ์•ˆ ๋ฐฉ๋ฒ• MAR (ฮป = 1, 2, 3) ๊ณผ Experience Replay ๊ธฐ์ค€์„ ์„ ๊ฐ™์€ ์กฐ๊ฑด(๊ฐ™์€ ์ถœ๋ฐœ์ ยท๊ฐ™์€ seedยท๊ฐ™์€ ๋ฐ์ดํ„ฐ ๋ถ„ํ• )์—์„œ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค. kimtaegyu/TETHER ์™€ ๊ฐ™์€ ๊ตฌ์กฐ์ด๊ณ , ๊ทธ ์ €์žฅ์†Œ์™€ ๋‹ค๋ฅธ ์ ์€ ๋งจ ์•„๋ž˜์— ์ ์—ˆ์Šต๋‹ˆ๋‹ค.

๋””๋ ‰ํ„ฐ๋ฆฌ ๋ฐฉ๋ฒ• ์†์‹ค ๊ณผ๊ฑฐ ๋ณด์กด ๋ฐฉ์‹
er/ Experience Replay (๊ธฐ์ค€์„ ) L_FM(ํ˜„์žฌ 24 + ๋ฆฌํ”Œ๋ ˆ์ด 8) ํ•œ ๋ฐฐ์น˜ ๊ณผ๊ฑฐ ํƒœ์Šคํฌ๋‹น 5 ์—ํ”ผ์†Œ๋“œ๋ฅผ ๋ฒ„ํผ์— ์œ ์ง€
mar_lam1/ MAR, ฮป = 1 L_FM(ํ˜„์žฌ) + ฮป ยท ฮฃ_j L_j ๊ณผ๊ฑฐ ํƒœ์Šคํฌ์˜ (state, ์‹œ๊ฐํŠน์ง•) ์ฝ”๋“œ๋ถ์—์„œ ํ•ฉ์„ฑ ์ƒ˜ํ”Œ์„ ๋งŒ๋“ค์–ด teacher ์™€ ์•ก์…˜ ๊ณต๊ฐ„์—์„œ ๋งž์ถค
mar_lam2/ MAR, ฮป = 2 ์œ„์™€ ๊ฐ™์Œ ์œ„์™€ ๊ฐ™์Œ
mar_lam3/ MAR, ฮป = 3 ์œ„์™€ ๊ฐ™์Œ ์œ„์™€ ๊ฐ™์Œ

MAR ์˜ ์•ต์ปค ์†์‹ค (๊ณผ๊ฑฐ ํƒœ์Šคํฌ j ๋งˆ๋‹ค, N = ๊ณผ๊ฑฐ ํƒœ์Šคํฌ ์ˆ˜):

โ€–p_S โˆ’ p_Tโ€–ยฒ = (r_S โˆ’ r_T)ยฒ + 2ยทr_Sยทr_Tยท(1 โˆ’ cos) = m + e
L_j = (1/N)ยทmean(m) + (1/N)ยทฮฒยทmean( e / (r_Tยฒ + c) )        c = 0.1, ฮฒ = 1

์†๋„๋ฅผ ํฌ๊ธฐ(m)์™€ ๋ฐฉํ–ฅ(e)์œผ๋กœ ์ชผ๊ฐœ๊ณ , ๋ฐฉํ–ฅ ํ•ญ์— teacher ํฌ๊ธฐ์˜ ์—ญ์ œ๊ณฑ์„ ๊ณฑํ•ด ๋А๋ฆฐ ๊ตฌ๊ฐ„(์ •๋ฐ€ ์กฐ์ž‘)์˜ ๋ฐฉํ–ฅ์ด ๊ฐ๋…์„ ๋ฐ›๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ๊ณ„์ˆ˜๊ฐ€ (0, 1/c] ๋กœ ์œ ๊ณ„๋ผ ๋ฐฐ์น˜ ํ†ต๊ณ„ ๊ธฐ๋ฐ˜ ํด๋ฆฌํ•‘์ด ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์‹์€ policy_code/L2_V5.py ์™€ policy_code/cl_train.py ์˜ ๋จธ๋ฆฌ ์ฃผ์„์— ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฆ„์— ๋Œ€ํ•˜์—ฌ: ์ฝ”๋“œยทtask_info.json ์—๋Š” ๊ฐœ๋ฐœ ๋‹น์‹œ ๋‚ด๋ถ€ ์ด๋ฆ„ v5 ๊ฐ€ ๋‚จ์•„ ์žˆ์Šต๋‹ˆ๋‹ค. "method": "v5" ๊ฐ€ MAR ์ž…๋‹ˆ๋‹ค. task_info.json ์— "method_name" ์„ ๊ฐ™์ด ์ ์–ด ๋‘์—ˆ์Šต๋‹ˆ๋‹ค.


๋””๋ ‰ํ„ฐ๋ฆฌ ๊ตฌ์กฐ

<run>/
  task_0/  config.json  model.safetensors  task_info.json   <- ํƒœ์Šคํฌ 0 ๊นŒ์ง€ ๋ฐฐ์šด ๋ชจ๋ธ
  task_1/  ...                                               <- ํƒœ์Šคํฌ 0,1 ๊นŒ์ง€
  task_2/  ...
  task_3/  ...                                               <- 4 ํƒœ์Šคํฌ๋ฅผ ๋ชจ๋‘ ๋ฐฐ์šด ์ตœ์ข… ๋ชจ๋ธ
  train_config.json     ํ•™์Šต์— ์‹ค์ œ๋กœ ์“ด ์ธ์ž ์ „๋ถ€
  holdout_report.txt    hold-out MSE ํ‘œ (์•„๋ž˜ ๊ฒฐ๊ณผ์™€ ๊ฐ™์€ ๊ฒƒ)
  holdout_mse.csv / .json
  summary.json          ํƒœ์Šคํฌ ์ˆœ์„œยทstepยท์†Œ์š” ์‹œ๊ฐ„
  diag.jsonl            200 step ๋งˆ๋‹ค ์†์‹คยท์•ต์ปค ๋‚ด๋ถ€๊ฐ’
policy_code/            ์ •์ฑ…ยทํ•™์Šต ์ฝ”๋“œ (์•„๋ž˜ "๋กœ๋“œ" ์ฐธ๊ณ )

task_info.json ์˜ˆ:

{"task_index": 1, "task_dir": "pick_a_block_and_drop_on_the_box_2",
 "instructions": ["pick a block and drop on the box"], "steps_done": 10000,
 "method": "v5", "method_name": "MAR"}

ํƒœ์Šคํฌ ์ˆœ์„œ์™€ ์ง€์‹œ๋ฌธ

k ๋ฐ์ดํ„ฐ์…‹ (asdl-unist/โ€ฆ) ์ง€์‹œ๋ฌธ (๊ทธ๋Œ€๋กœ ์ž…๋ ฅ) ์—ํ”ผ์†Œ๋“œ ํ”„๋ ˆ์ž„
0 put_the_ring_on_the_stick Put the ring on the stick. 50 7,767
1 pick_a_block_and_drop_on_the_box_2 pick a block and drop on the box 50 10,464
2 new_aicp_carrot Pick up the carrot and put it in the basket. 50 14,137
3 stack_cup Pick up the left paper cup and stack it onto the right paper cup. 50 12,397

ํƒœ์Šคํฌ๋งˆ๋‹ค ๋’ค์ชฝ 5 ์—ํ”ผ์†Œ๋“œ๋Š” ํ•™์Šต์—์„œ ์ œ์™ธํ•˜๊ณ  hold-out ํ‰๊ฐ€์—๋งŒ ์ผ์Šต๋‹ˆ๋‹ค (ํ•™์Šต 45 / hold-out 5).

ํ•™์Šต ์„ค์ • (๋„ค ๋Ÿฐ ๊ณตํ†ต)

๊ฐ’
์ถœ๋ฐœ์  svla_so100_pretrained_clare (SO-100 3 ํƒœ์Šคํฌ joint ์‚ฌ์ „ํ•™์Šต) โ€” ๊ฐ€์ค‘์น˜๋งŒ ์ฝ๊ณ  ์ •๊ทœํ™” ๋ฒ„ํผ๋Š” ASDL ํ†ต๊ณ„ ์‚ฌ์šฉ
ํƒœ์Šคํฌ๋‹น step 10,000 (์ด 40,000), ์ฝ”์‚ฌ์ธ ์Šค์ผ€์ค„์€ ํƒœ์Šคํฌ๋งˆ๋‹ค ์ƒˆ๋กœ ์‹œ์ž‘
๋ฐฐ์น˜ / seed 32 / 42
์ •๊ทœํ™” 4 ํƒœ์Šคํฌ pooled min/max โ€” ๋„ค ๋Ÿฐ์˜ ์ •๊ทœํ™” ๋ฒ„ํผ๊ฐ€ ๋™์ผ
์˜ตํ‹ฐ๋งˆ์ด์ € AdamW (lerobot ๊ธฐ๋ณธ)
ER ํ˜„์žฌ 24 + ๋ฆฌํ”Œ๋ ˆ์ด 8 ์„ ํ•œ ๋ฐฐ์น˜๋กœ ์ด์–ด ๋ถ™์—ฌ ์†์‹ค ํ•˜๋‚˜ (--er_replay_bs 8, LIBERO scripts/er.py ์™€ ๊ฐ™์€ ๋ฐฉ์‹). ๋ฒ„ํผ = ๊ณผ๊ฑฐ ํƒœ์Šคํฌ๋‹น ์•ž์ชฝ 5 ์—ํ”ผ์†Œ๋“œ
MAR --anchor_c 0.1 --beta 1.0 --dir_space act --anchor_reduce mean --pose_dims 5 --speed_mode diff, ์ฝ”๋“œ๋ถ K = max(8, 2 ร— ๋ฐ๋ชจ ์ˆ˜)

์‹ค์ œ ์ธ์ž๋Š” ๊ฐ ํด๋”์˜ train_config.json ์— ์ „๋ถ€ ๋“ค์–ด ์žˆ์Šต๋‹ˆ๋‹ค.


๊ฒฐ๊ณผ โ€” hold-out action MSE (๋‚ฎ์„์ˆ˜๋ก ์ข‹์Œ)

์ •๊ทœํ™” ๊ณต๊ฐ„์—์„œ ์‹คํ–‰ ๊ตฌ๊ฐ„ 8 ์Šคํ…(๋กœ๋ด‡์ด ์‹ค์ œ๋กœ ๋‚ด๋ณด๋‚ด๋Š” ์•ก์…˜)์˜ MSE, ํƒœ์Šคํฌ๋‹น 256 ์ฐฝ. ๋กค์•„์›ƒ ์„ฑ๊ณต๋ฅ ์ด ์•„๋‹™๋‹ˆ๋‹ค.

์ตœ์ข… (4 ํƒœ์Šคํฌ๋ฅผ ๋ชจ๋‘ ๋ฐฐ์šด ๋’ค, task_3/ ์ฒดํฌํฌ์ธํŠธ)

ํƒœ์Šคํฌ ER MAR ฮป=1 MAR ฮป=2 MAR ฮป=3
t0 ring 0.00843 0.01066 0.01068 0.01096
t1 box 0.01418 0.01360 0.01400 0.01438
t2 carrot 0.01562 0.01256 0.01239 0.01272
t3 stack_cup 0.01162 0.01042 0.01039 0.01064
ํ‰๊ท  0.01246 0.01181 0.01187 0.01218

๋ง๊ฐ (์ตœ์ข… โˆ’ ๋ฐฐ์šด ์งํ›„, ์Œ์ˆ˜ = ์˜คํžˆ๋ ค ๊ฐœ์„ )

ํƒœ์Šคํฌ ER MAR ฮป=1 MAR ฮป=2 MAR ฮป=3
t0 ring โˆ’0.00116 +0.00106 +0.00109 +0.00137
t1 box โˆ’0.00049 โˆ’0.00150 โˆ’0.00144 โˆ’0.00182
t2 carrot +0.00197 โˆ’0.00058 โˆ’0.00055 โˆ’0.00035
ํ‰๊ท  +0.00008 โˆ’0.00025 โˆ’0.00023 โˆ’0.00020

์ „์ฒด ํ–‰๋ ฌ (ํ–‰ = ํƒœ์Šคํฌ k ๊นŒ์ง€ ๋ฐฐ์šด ๋’ค, ์—ด = ํ‰๊ฐ€ ํƒœ์Šคํฌ)

ER                                      MAR ฮป=1
after    t0      t1      t2      t3     after    t0      t1      t2      t3
0     0.00959                           0     0.00959
1     0.00886 0.01466                   1     0.01098 0.01510
2     0.00851 0.01302 0.01365           2     0.00928 0.01382 0.01313
3     0.00843 0.01418 0.01562 0.01162   3     0.01066 0.01360 0.01256 0.01042

MAR ฮป=2                                 MAR ฮป=3
0     0.00959                           0     0.00959
1     0.01035 0.01544                   1     0.01021 0.01620
2     0.00886 0.01396 0.01294           2     0.00981 0.01391 0.01306
3     0.01068 0.01400 0.01239 0.01039   3     0.01096 0.01438 0.01272 0.01064

์ฝ์„ ๋•Œ

  • t0 ์˜ "์งํ›„" ๊ฐ’(0.00959)์ด ๋„ค ๋Ÿฐ์—์„œ ์ •ํ™•ํžˆ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ฒซ ํƒœ์Šคํฌ์—๋Š” ๊ณผ๊ฑฐ๊ฐ€ ์—†์–ด ๋ฆฌํ”Œ๋ ˆ์ด๋„ ์•ต์ปค๋„ ๊ฑธ๋ฆฌ์ง€ ์•Š์œผ๋ฏ€๋กœ ๊ฐ™์•„์•ผ ์ •์ƒ์ด๊ณ , ๋„ค ๋Ÿฐ์ด ๊ฐ™์€ ์ถœ๋ฐœ์ ยทseed ๋ฅผ ์ผ๋‹ค๋Š” ํ™•์ธ์ž…๋‹ˆ๋‹ค.
  • ER ์€ t0 ๋ฅผ ๊ฐ€์žฅ ์ž˜ ์ง€ํ‚ค์ง€๋งŒ t2(carrot)๋ฅผ ๊ฐ€์žฅ ๋งŽ์ด ์žƒ๊ณ (+0.00197), MAR ์€ t2ยทt3 ๊ฐ€ ์ข‹๊ณ  t0 ๋ฅผ ์กฐ๊ธˆ ์žƒ์Šต๋‹ˆ๋‹ค. ์ตœ์ข… ํ‰๊ท ์€ MAR ฮป=1 ์ด ๊ฐ€์žฅ ๋‚ฎ์Šต๋‹ˆ๋‹ค.
  • seed 1 ๊ฐœ, ํƒœ์Šคํฌ ์ˆœ์„œ 1 ๊ฐœ์ž…๋‹ˆ๋‹ค. ๋Ÿฐ ๊ฐ„ ์ฐจ์ด(์ตœ๋Œ€ 0.0007)๊ฐ€ seed ๋ณ€๋™๋ณด๋‹ค ํฐ์ง€๋Š” ์ด ๋„ค ๋Ÿฐ๋งŒ์œผ๋กœ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • ํ–‰๋™ ์˜ˆ์ธก ์˜ค์ฐจ์ด์ง€ ์„ฑ๊ณต๋ฅ ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์‹ค๋กœ๋ด‡ ๋กค์•„์›ƒ๊ณผ ํ•จ๊ป˜ ์ฝ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋กœ๋“œ

config.json ์˜ "type": "ditflow_mt" ๋Š” ์—…์ŠคํŠธ๋ฆผ lerobot ์— ์—†๋Š” ์ปค์Šคํ…€ ์ •์ฑ…์ด๋ผ lerobot ํฌํฌ(lerobot_lsy) ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. policy_code/ ์˜ modeling_dit_flow_mt.pyยทconfiguration_dit_flow_mt.py ๊ฐ€ ๊ทธ ์ •์ฑ… ์†Œ์Šค์ด์ง€๋งŒ lerobot ์ฝ”์–ด์— ์˜์กดํ•˜๋ฏ€๋กœ ๋‹จ๋…์œผ๋กœ๋Š” ๋™์ž‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

import sys; sys.path.insert(0, "<์ด ์ €์žฅ์†Œ๋ฅผ ๋ฐ›์€ ๊ฒฝ๋กœ>/policy_code")
from asdl_data import AsdlMeta
from lerobot.configs.policies import PreTrainedConfig
from lerobot.policies.factory import make_policy

path = "<์ด ์ €์žฅ์†Œ๋ฅผ ๋ฐ›์€ ๊ฒฝ๋กœ>/mar_lam1/task_3"      # 4 ํƒœ์Šคํฌ๋ฅผ ๋ชจ๋‘ ๋ฐฐ์šด MAR (ฮป=1)
cfg = PreTrainedConfig.from_pretrained(path)
cfg.pretrained_path = path
cfg.device = "cuda"
policy = make_policy(cfg=cfg, ds_meta=AsdlMeta("<ASDL ๋ฐ์ดํ„ฐ์…‹ ํ•˜๋‚˜์˜ ๊ฒฝ๋กœ>"))
policy.eval()
  • ์ •๊ทœํ™” ํ†ต๊ณ„๋Š” ์ฒดํฌํฌ์ธํŠธ ์•ˆ์— ๋“ค์–ด ์žˆ์–ด(๋ฒ„ํผ 10 ๊ฐœ) ๋กœ๋“œ ์‹œ ๋ฎ์–ด์”๋‹ˆ๋‹ค. ds_meta ๋Š” feature ํ‘œ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋งŒ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ์…‹์€ LeRobot v3.0 ์ด๋ผ ํฌํฌ์˜ LeRobotDatasetMetadata(v2.1) ๋กœ๋Š” ๋ชป ์ฝ๊ณ , policy_code/asdl_data.py ์˜ AsdlMeta ๋ฅผ ์จ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ „์ฒ˜๋ฆฌ ๊ทœ์•ฝ (์–ด๊ธ‹๋‚˜๋ฉด ์กฐ์šฉํžˆ ์„ฑ๋Šฅ์ด ๋–จ์–ด์ง‘๋‹ˆ๋‹ค)

๊ทœ์•ฝ
์ด๋ฏธ์ง€ observation.images.top, observation.images.wrist ๋‘ ์นด๋ฉ”๋ผ, 480ร—640 โ†’ 256ร—256 ์ข…ํšก๋น„ ๋ฌด์‹œ ๋ฆฌ์‚ฌ์ด์ฆˆ, [0,1] float. ๊ด€์ธก 2 ํ”„๋ ˆ์ž„(tโˆ’1, t)
state ๊ด€์ ˆ ์ ˆ๋Œ€ ์œ„์น˜ 6 ์ฐจ์› ๋‚ ๊ฒƒ (์ •๊ทœํ™”๋Š” ์ •์ฑ… ๋‚ด๋ถ€)
action 6 ์ฐจ์›, ์ฒญํฌ 16, ์‹คํ–‰ ๊ตฌ๊ฐ„ = ์˜ˆ์ธก index 1..8 (index 0 ์€ tโˆ’1)
์–ธ์–ด task_info.json ์˜ ์ง€์‹œ๋ฌธ ๋ฌธ์ž์—ด ๊ทธ๋Œ€๋กœ (CLIP ํ…์ŠคํŠธ ์ธ์ฝ”๋”, ๋™๊ฒฐ)
fps 30

policy_code/asdl_data.py ๊ฐ€ ํ•™์Šต ๋•Œ ์“ด ๋ณ€ํ™˜ ๊ทธ ์ž์ฒด์ด๋ฏ€๋กœ, ์ถ”๋ก  ์ „์ฒ˜๋ฆฌ๋„ ์ด ํŒŒ์ผ์„ ๊ธฐ์ค€์œผ๋กœ ๋งž์ถ”๋ฉด ๋ฉ๋‹ˆ๋‹ค.

policy_code/

ํŒŒ์ผ ์—ญํ• 
cl_train.py ์ด ์ฒดํฌํฌ์ธํŠธ๋“ค์„ ๋งŒ๋“  ํ•™์Šต ๋“œ๋ผ์ด๋ฒ„ (ER / MAR). --er_replay_bs ํฌํ•จ
L2_V5.py MAR ์•ต์ปค ์†์‹ค (speedinv_coef, ํฌ๊ธฐยท๋ฐฉํ–ฅ ๋ถ„ํ•ด)
L2_V4.py ์ฝ”๋“œ๋ถ ์ƒ์„ฑยท์ƒ˜ํ”Œ๋Ÿฌยทteacher ๋“ฑ ์•ต์ปค ๊ณตํ†ต ๋ถ€๋ถ„ (cl_train.py ๊ฐ€ import)
asdl_data.py v3.0 ๋ฐ์ดํ„ฐ ๋กœ๋” + AsdlMeta + ํ”„๋ ˆ์ž„ ์บ์‹œ
modeling_dit_flow_mt.py, configuration_dit_flow_mt.py ์ •์ฑ… ๋ณธ์ฒดยท์„ค์ • (ํฌํฌ lerobot_lsy ์˜ ๊ฒƒ)

์žฌํ˜„ (ํ”„๋ ˆ์ž„ ์บ์‹œ๋ฅผ ๋จผ์ € ๋งŒ๋“  ๋’ค):

T=put_the_ring_on_the_stick,pick_a_block_and_drop_on_the_box_2,new_aicp_carrot,stack_cup
python asdl_data.py --tasks $T
python cl_train.py --method er --er_replay_bs 8 --tasks $T --init_from <svla_so100_pretrained_clare> --norm_stats pooled --seed 42 --out results/er
python cl_train.py --method v5 --anchor_c 0.1 --beta 1.0 --dir_space act --anchor_reduce mean --lambda_level 1.0 \
    --pose_dims 5 --speed_mode diff --tasks $T --init_from <svla_so100_pretrained_clare> --norm_stats pooled --seed 42 --out results/mar_lam1

kimtaegyu/TETHER ์™€ ๋‹ค๋ฅธ ์ 

kimtaegyu/TETHER ์ด ์ €์žฅ์†Œ
ํƒœ์Šคํฌ 2 block_on_the_box pick_a_block_and_drop_on_the_box_2 (์žฌ์ˆ˜์ง‘ ๋ฐ์ดํ„ฐ)
์ œ์•ˆ ๋ฐฉ๋ฒ• TETHER (v4, ์†๋„ ๊ณต๊ฐ„ ์•ต์ปค + speedinv ๊ฐ€์ค‘) MAR (v5, ์•ก์…˜ ๊ณต๊ฐ„, ํฌ๊ธฐยท๋ฐฉํ–ฅ ๋ถ„ํ•ด, ฮฒ=1 c=0.1), ฮป 1/2/3
ER ๋ฐฐ์น˜ ํ˜„์žฌ 32 + ๋ฆฌํ”Œ๋ ˆ์ด 32 ๋ฅผ ๋”ฐ๋กœ forward ํ˜„์žฌ 24 + ๋ฆฌํ”Œ๋ ˆ์ด 8 ํ•œ ๋ฐฐ์น˜ (LIBERO ER ๊ณผ ๋™์ผ)
์ถœ๋ฐœ์ ยท์ •๊ทœํ™”ยท๋ถ„ํ•  *_pre ๋Ÿฐ๊ณผ ๊ฐ™์Œ (์‚ฌ์ „ํ•™์Šต ์ถœ๋ฐœ, pooled) ๊ฐ™์Œ

์•Œ๋ ค์ง„ ํ•œ๊ณ„

  1. ๋Œ€๋ฆฌ ์ง€ํ‘œ์ž…๋‹ˆ๋‹ค. hold-out MSE ๋Š” ์„ฑ๊ณต๋ฅ ์„ ๋Œ€์‹ ํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.
  2. seed 1 ๊ฐœ์ž…๋‹ˆ๋‹ค. ๋„ค ๋Ÿฐ ์‚ฌ์ด์˜ ์ฐจ์ด๋ฅผ ํ†ต๊ณ„์ ์œผ๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  3. ํƒœ์Šคํฌ 4 ๊ฐœ, ์ˆœ์„œ 1 ๊ฐœ๋ฟ์ž…๋‹ˆ๋‹ค.
  4. pooled ์ •๊ทœํ™”๋Š” ๋ฏธ๋ž˜ ํƒœ์Šคํฌ์˜ min/max ๋ฅผ ๋ฏธ๋ฆฌ ๋ณด๋Š” ์…ˆ์ž…๋‹ˆ๋‹ค(๊ฐ’์€ ํ•™์Šต์— ์•ˆ ์“ฐ์ด๊ณ  ์ถ•์ฒ™๋งŒ ์ •ํ•ฉ๋‹ˆ๋‹ค). ๋„ค ๋Ÿฐ์— ๋˜‘๊ฐ™์ด ์ ์šฉ๋์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ

๋„ค ๋ฐ์ดํ„ฐ์…‹ ๋ชจ๋‘ asdl-unist ์˜ LeRobot v3.0 ํ˜•์‹(parquet + mp4)์ž…๋‹ˆ๋‹ค. 50 ์—ํ”ผ์†Œ๋“œ์”ฉ, 30 fps, ์นด๋ฉ”๋ผ 2 ๋Œ€, ๊ด€์ ˆ 6 ์ถ•.

Downloads last month

-

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

Datasets used to train kimtaegyu/TETHER_CVPR