Robotics
LeRobot
Safetensors
act
imitation-learning

pour_bottle_act โ€” ์‹œ์•ฝ ๋ถ“๊ธฐ

OMX "์‹œ์•ฝ ๋ถ€์–ด์ค˜" ํƒœ์Šคํฌ์šฉ ACT ์ •์ฑ… ๋ชจ์Œ. ํ•™์Šต ์กฐ๊ฑด๋ณ„ ๋ชจ๋ธ์ด ํด๋”๋กœ ๋‚˜๋‰˜์–ด ์žˆ๊ณ , ๊ฐ ํด๋” ์•ˆ์— ์ฒดํฌํฌ์ธํŠธ step๋ณ„ ํ•˜์œ„ ํด๋”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ

  • gamzadole/ARMCHEMIST_POUR_BOTTLE โ€” 30 ์—ํ”ผ์†Œ๋“œ ร— 10์ดˆ, 30fps, 9,051 ํ”„๋ ˆ์ž„
  • ์ž…๋ ฅ/์ถœ๋ ฅ: ์นด๋ฉ”๋ผ 3๋Œ€ (cam_head, cam_head_depth, cam_wrist), state/action 6์ฐจ์› (์™ผํŒ” joint1โ€“5 + gripper)

๋ชจ๋ธ

fps(15/30)์™€ ์• ๋งคํ•œ ์—ํ”ผ์†Œ๋“œ ํฌํ•จ ์—ฌ๋ถ€๋กœ 4๊ฐœ ์กฐ๊ฑด์„ ํ•™์Šตํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฒดํฌํฌ์ธํŠธ๋Š” 10k๋งˆ๋‹ค ์ „๋ถ€ ์˜ฌ๋ ธ์Šต๋‹ˆ๋‹ค.

  • ์• ๋งคํ•œ ์—ํ”ผ์†Œ๋“œ: 9 (๋ณต๊ท€ ์˜ค๋ฅ˜), 19 (์‹œ์ž‘ํ•  ๋•Œ ํŒ”์ด ๋ณด์ž„) โ†’ *_excl_ambiguous๋Š” ์ œ์™ธ, *_incl_ambiguous๋Š” ํฌํ•จ
  • ์†๋ชฉ ์นด๋ฉ”๋ผ(cam_wrist)๊ฐ€ ๋Œ€๋ถ€๋ถ„ ํ•˜์–—๊ฒŒ ํฌํ™”๋ผ ์žˆ์Šต๋‹ˆ๋‹ค(ํ‰๊ท  ๋ฐ๊ธฐ 248, ํ”ฝ์…€ 93% ํฌํ™”). ๊ฐ™์€ ์™ผํŒ” ์†๋ชฉ ์นด๋ฉ”๋ผ๋ฅผ ์“ฐ๋Š” ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ(์‹œ์•ฝํ†ต ์žก๊ธฐ/๋‚ด๋ ค๋†“๊ธฐ)๋Š” ํฌํ™” 0%์ž…๋‹ˆ๋‹ค. ์ด ์ƒํƒœ ๊ทธ๋Œ€๋กœ 3์บ ์œผ๋กœ ํ•™์Šตํ–ˆ์œผ๋ฏ€๋กœ, ์ถ”๋ก  ๋•Œ๋„ ์†๋ชฉ ์นด๋ฉ”๋ผ๊ฐ€ ๊ฐ™์€ ๋…ธ์ถœ์ด์–ด์•ผ ํ•™์Šต ์กฐ๊ฑด๊ณผ ๋งž์Šต๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ๊ฐ€ ์ž‘์•„์„œ(์•ฝ 9์ฒœ ํ”„๋ ˆ์ž„) epoch๊ฐ€ ๋งค์šฐ ๋งŽ์Šต๋‹ˆ๋‹ค. 10k~40k ์ฒดํฌํฌ์ธํŠธ๋ฅผ ๋จผ์ € ์‹œํ—˜ํ•ด ๋ณด๊ธธ ๊ถŒํ•ฉ๋‹ˆ๋‹ค.
ํด๋” fps ์ œ์™ธ ์—ํ”ผ์†Œ๋“œ ํ•™์Šต ๋ฐ์ดํ„ฐ chunk / n_action_steps epoch ์ตœ์ข… loss
15fps_excl_ambiguous/ 15 9, 19 28 ep / 4,232 ํ”„๋ ˆ์ž„ 40 / 10 189 0.041
15fps_incl_ambiguous/ 15 ์—†์Œ 30 ep / 4,533 ํ”„๋ ˆ์ž„ 40 / 10 176 0.044
30fps_excl_ambiguous/ 30 9, 19 28 ep / 8,450 ํ”„๋ ˆ์ž„ 80 / 20 95 0.043
30fps_incl_ambiguous/ 30 ์—†์Œ 30 ep / 9,051 ํ”„๋ ˆ์ž„ 80 / 20 88 0.043
pour_bottle_act/
โ”œโ”€โ”€ 15fps_excl_ambiguous/  (100k, 090k, 080k, 070k, 060k, 050k, 040k, 030k, 020k, 010k)
โ”œโ”€โ”€ 15fps_incl_ambiguous/  (100k, 090k, 080k, 070k, 060k, 050k, 040k, 030k, 020k, 010k)
โ”œโ”€โ”€ 30fps_excl_ambiguous/  (100k, 090k, 080k, 070k, 060k, 050k, 040k, 030k, 020k, 010k)
โ”œโ”€โ”€ 30fps_incl_ambiguous/  (100k, 090k, 080k, 070k, 060k, 050k, 040k, 030k, 020k, 010k)

๊ฐ ์ฒดํฌํฌ์ธํŠธ ํด๋”(์˜ˆ: 15fps_excl_ambiguous/100k/)์—๋Š” config.json, model.safetensors, train_config.json์ด ๋“ค์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ฒดํฌํฌ์ธํŠธ ์„ ํƒ

๋ฐ์ดํ„ฐ๊ฐ€ ์ž‘์•„์„œ 100k step ๋™์•ˆ ๋ฐ์ดํ„ฐ๋ฅผ ์•ฝ 88189๋ฒˆ ๋ฐ˜๋ณตํ•ด์„œ ๋ดค์Šต๋‹ˆ๋‹ค(epoch). ๊ณผ์ ํ•ฉ๋์„ ๊ฐ€๋Šฅ์„ฑ์ด ํฌ๋‹ˆ, ๋กœ๋ด‡์—์„œ๋Š” **10k40k ์ฒดํฌํฌ์ธํŠธ๋ถ€ํ„ฐ** ์‹œํ—˜ํ•ด ๋ณด์„ธ์š”. ํ•™์Šต loss๋Š” ๊ฒ€์ฆ loss๊ฐ€ ์•„๋‹ˆ๋ผ์„œ loss๊ฐ€ ๋‚ฎ์€ ์ฒดํฌํฌ์ธํŠธ๊ฐ€ ์‹ค์ œ๋กœ ๋” ์ž˜ํ•œ๋‹ค๋Š” ๋ณด์žฅ์€ ์—†์Šต๋‹ˆ๋‹ค.

๋ถˆ๋Ÿฌ์˜ค๊ธฐ

์ด LeRobot ๋ฒ„์ „์€ repo ์•ˆ์˜ ํ•˜์œ„ ํด๋”๋ฅผ --policy.path๋กœ ๋ฐ”๋กœ ์ง€์ •ํ•  ์ˆ˜ ์—†์–ด์„œ, ํ•„์š”ํ•œ ํด๋”๋งŒ ๋ฐ›์•„์„œ ๋กœ์ปฌ ๊ฒฝ๋กœ๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

hf download gc22-shin/pour_bottle_act --include "15fps_excl_ambiguous/100k/*" --local-dir ckpt/pour_bottle_act
--policy.path=ckpt/pour_bottle_act/15fps_excl_ambiguous/100k

์ถ”๋ก  fps๋ฅผ ํ•™์Šต๊ณผ ๋งž์ถฐ์•ผ ํ•ฉ๋‹ˆ๋‹ค. 15fps ๋ชจ๋ธ์€ 15fps๋กœ, 30fps ๋ชจ๋ธ์€ 30fps๋กœ ๋Œ๋ฆฌ์„ธ์š”. chunk ๊ธธ์ด๊ฐ€ ํ”„๋ ˆ์ž„ ๋‹จ์œ„๋ผ fps๊ฐ€ ๋‹ค๋ฅด๋ฉด ๋™์ž‘ ์†๋„๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

15fps ๋ชจ๋ธ์€ ์›๋ณธ(30fps)์—์„œ ์ง์ˆ˜ ํ”„๋ ˆ์ž„๋งŒ ๋‚จ๊ฒจ ํ•™์Šตํ–ˆ์Šต๋‹ˆ๋‹ค. ์›๋ณธ ์นด๋ฉ”๋ผ๊ฐ€ ์‹ค์ œ๋กœ๋Š” 15Hz๋ผ 30fps ์˜์ƒ์€ ๋‘ ํ”„๋ ˆ์ž„๋งˆ๋‹ค ๊ฐ™์€ ์˜์ƒ์ด ๋ฐ˜๋ณต๋˜๋Š”๋ฐ, ์ง์ˆ˜ ํ”„๋ ˆ์ž„๋งŒ ์“ฐ๋ฉด ๋ณต์ œ ํ”„๋ ˆ์ž„์ด ์—†์–ด์ง‘๋‹ˆ๋‹ค.

๊ณตํ†ต ํ•™์Šต ์„ค์ •

ํ•ญ๋ชฉ ๊ฐ’
์ •์ฑ… ACT (resnet18 ImageNet backbone, dim_model 512, heads 8, enc 4 / dec 1)
VAE latent 32, kl_weight 10
lr / backbone lr / weight decay 1e-5 / 1e-5 / 1e-4
batch 8, AMP on, seed 1000, temporal ensemble ์‚ฌ์šฉ ์•ˆ ํ•จ
chunk ์‹œ๊ฐ„ ๊ธฐ์ค€์œผ๋กœ ๋งž์ถค: 2.7์ดˆ ์˜ˆ์ธก, 0.67์ดˆ๋งˆ๋‹ค ์žฌ์ถ”๋ก  (15fps: chunk 40 / n_action_steps 10, 30fps: 80 / 20)

LeRobot commit 989f3d0, RTX 3080 1์žฅ.

ACT๋Š” ํ•™์Šต loss๊ฐ€ ๊ฐ€์žฅ ๋‚ฎ์€ ์ฒดํฌํฌ์ธํŠธ๊ฐ€ ์‹ค์ œ๋กœ ๊ฐ€์žฅ ์ž˜ํ•˜์ง€๋Š” ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์œผ๋‹ˆ, ์‹ค์ œ ๋กœ๋ด‡์—์„œ ๋น„๊ตํ•ด์„œ ๊ณ ๋ฅด์„ธ์š”.

Downloads last month

-

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

Dataset used to train gc22-shin/pour_bottle_act

Collection including gc22-shin/pour_bottle_act