Abstract -

RT-X, RT 모델과 같이 기존 연구 대부분은 다음과 같은 문제점이 있었다.

첫째, 기존 VLA들은 대부분 closed model이며, 대중이 접근할 수 없다.

둘째, 기존 연구들은 새로운 task에 대해 VLA를 효율적으로 fine-tuning하는 방법을 충분히 탐구하지 않았다. 하지만 이는 VLA의 실제 채택을 위해 핵심적인 요소이다.

이를 위해 OpenVLA를 소개한다.

OpenVLA는 Llama 2 language model을 기반으로 하며, 여기에 DINOv2SigLIP에서 얻은 pretrained feature를 융합하는 visual encoder를 결합한다.

OpenVLA는 29개의 task와 여러 robot embodiment에 걸친 평가에서, RT-2-X 55B와 같은 closed model보다 절대 task success rate 기준으로 16.5% 더 높은 성능을 보인다.

 

결국 위 저자들이 주장하고 싶은 내용은 ,  

기존 RT-2/RT-X 계열 VLA는 강력하지만 closed라서 접근과 fine-tuning이 어렵다.
OpenVLA는 7B open-source VLA로, 970k real robot demonstration으로 학습되었고, RT-2-X 55B보다 작으면서도 여러 평가에서 더 강한 generalist manipulation 성능을 보인다.
또한 LoRA와 quantization을 통해 연구실 수준 GPU에서도 fine-tuning과 inference가 가능하게 만든다.

Open X-Embodiment dataset에서 VLA를 scale 있게 학습할 수 있도록 built-in support를 갖춘 PyTorch codebase를 공개했다.

OpenVLA의 아키텍쳐

Introduction - 

 기존 RT-X 모델들이 잘 연구되어 왔지만 두 가지의 큰 제한점이 있다. 

 

첫째, 현재 model들은 closed model이며, model architecture, training procedure, data mixture에 대한 visibility가 제한되어 있다.

 

둘째, 기존 연구들은 VLA를 새로운 robot, environment, task에 배포하고 적응시키기 위한 best practice를 제공하지 않는다. 특히 consumer-grade GPU와 같은 commodity hardware에서의 사용을 다루지 않는다.

증가된 data diversity와 새로운 model component의 결과로, OpenVLA는 WidowX와 Google Robot embodiment에서 수행한 29개 evaluation task에 대해, 이전 state-of-the-art VLA인 55B parameter RT-2-X model보다 절대 success rate 기준으로 16.5% 더 높은 성능을 보인다.

 

여기에 끝나지 않고 저자는 LoRA와 model quantization을 활용하는 compute-efficient fine-tuning method의 효과를 VLA에서 처음으로 보인다. 이로써 OpenVLA model을 대형 server node 대신 consumer-grade GPU에서 adaptation할 수 있으며, 성능을 손상시키지 않는다.

 

Related Works -

 

Visually-Conditioned Language Models

Prismatic VLM 논문이 다루는 VLM은 대체로 다음 구조이다.

Image
→ pretrained visual backbone
→ image patch features
→ projector
→ language model input embedding space
→ LLM
→ text output

 

논문은 최근 VLM들이 복잡한 cross-attention 구조 대신, pretrained visual representation에서 나온 patch feature를 token처럼 취급하고, 그것을 language model input space로 projection하는 patch-as-token 방식을 많이 사용한다고 설명한다. 이 방식은 next-token prediction objective를 그대로 쓸 수 있고, Llama-2나 Mistral 같은 강력한 LM 생태계를 활용할 수 있다는 장점이 있다고 말한다.

OpenVLA는 여기서 text output 대신 robot action token을 출력하도록 fine-tuning

결과적으로 CLIP과 SigLIP처럼 vision-language contrastive objective로 학습된 backbone이 다른 대안보다 강하다고 본다. 저자들은 그 이유로 contrastive objective 자체뿐 아니라, CLIP/SigLIP의 internet-sourced image distribution도 영향을 줄 수 있다고 해석한다. 

Prismatic 논문은 DINOv2 feature와 CLIP/SigLIP feature를 channel dimension으로 concatenate하는 fusion을 실험한다. 그 결과 DINOv2 + SigLIP fused representation이 전반적으로 가장 좋은 visual representation이었다고 보고한다. 특히 localization과 challenge task에서 5–10% 정도의 인상적인 향상이 있었다고 한다.

 

Generalist Robot Policies - 

선행 연구 Octo는 여러 로봇을 out-of-the-box로 제어할 수 있고, 새로운 robot setup에 유연하게 fine-tuning될 수 있는 generalist policy를 학습한다. 이러한 접근들과 OpenVLA 사이의 핵심 차이는 model architecture이다.

Octo와 같은 기존 연구들은 일반적으로 pretrained component, 예를 들어 language embedding이나 visual encoder를, scratch로 초기화된 추가 model component와 결합한다. 그리고 policy training 과정에서 이 component들을 서로 “stitch”하도록 학습한다. 이와 달리 OpenVLA는 더 end-to-end한 접근을 취한다.

OpenVLA는 robot action을 language model vocabulary 안의 token으로 취급함으로써, VLM을 직접 fine-tuning하여 robot action을 생성하게 만든다.

우리의 실험 평가는 이 단순하지만 scalable한 pipeline이 기존 generalist policy보다 성능과 generalization ability를 상당히 향상시킨다는 것을 보여준다.

 

Vision-Language-Action Models - 

저자의 연구는 RT-2-X와 여러 중요한 측면에서 다르다.

첫째, 강력한 open VLM backbone과 더 풍부한 robot pretraining dataset을 결합함으로써, OpenVLA는 실험에서 RT-2-X를 능가하면서도 model size는 한 자릿수 규모 이상 작다.

둘째, OpenVLA model을 새로운 target setup에 fine-tuning하는 것을 철저히 조사한다. 반면 RT-2-X는 fine-tuning setting을 조사하지 않는다.

셋째,  VLA에 대해 현대적인 parameter-efficient fine-tuning 및 quantization 접근법의 효과를 처음으로 보인다.

넷째, OpenVLA는 open-source인 첫 번째 generalist VLA이다. 따라서 VLA training, data mixture, objective, inference에 관한 미래 연구를 지원한다.

 

The OpenVLA Model - Method

 

본 연구에서는 Prismatic-7B VLM을 기반으로 한다. 

  • 600M parameter visual encoder
  • 작은 2-layer MLP projector
  • 7B parameter Llama 2 language model backbone

특히 Prismatic은 두 부분으로 된 visual encoder를 사용한다. 이 visual encoder는 pretrained SigLIP model과 DINOv2 model로 구성된다. 입력 image patch들은 두 encoder를 각각 통과하고, 그 결과 feature vector들은 channel-wise로 concatenate된다.

CLIP-only encoder나 SigLIP-only encoder처럼 더 흔히 사용되는 vision encoder들과 달리, DINOv2 feature를 추가하는 것은 향상된 spatial reasoning에 도움이 되는 것으로 나타났다. 이는 robot control에 특히 도움이 될 수 있다.

 

OpenVLA Training Procedure - 

저자는 action prediction problem을 “vision-language” task로 공식화한다. 저자는 continuous robot action을 language model tokenizer가 사용하는 discrete token으로 mapping하여 action을 LLM의 output space 안에서 표현한다. (기존 논문 알고 오면 쉬움 RT-1, 2..)  Robot action의 각 dimension을 별도로 256개 bin 중 하나로 discretize한다. 

 

OpenVLA의 language backbone에서 사용하는 tokenizer, 즉 Llama tokenizer는 fine-tuning 중 새로 도입되는 token을 위해 100개의 “special token”만 예약해둔다. 이는 action discretization에 필요한 256개 token에는 너무 적다.

Llama tokenizer vocabulary에서 가장 적게 사용되는 256개 token, 이는 vocabulary의 마지막 256개 token에 해당한다, 을 저자의 action token으로 덮어쓴다. action이 token sequence로 처리되면, OpenVLA는 standard next-token prediction objective로 학습된다. 이때 cross-entropy loss는 predicted action token에 대해서만 평가된다.

 

Training Data - 

 

training dataset을 구성하기 위한 base로 Open X-Embodiment dataset, 즉 OpenX를 활용한다.

작성 시점의 전체 OpenX dataset은 70개 이상의 개별 robot dataset으로 구성되며, 2M개 이상의 robot trajectory를 포함한다. 이들은 대규모 community effort를 통해 일관되고 사용하기 쉬운 data format으로 통합되었다.

 

OpenVLA Design Decisions - 

전체를 OPen-X 로 하기보다 BridgeV2 를 사용해서 먼저 확인함 .

OpenVLA는 처음부터 Prismatic만 쓴 게 아니다. 저자들은 여러 VLM backbone을 비교를 했다.

  • IDEFICS-1
  • LLaVA
  • Prismatic

결론은 Prismatic이 가장 좋았다.

scene에 object가 하나만 있으면, LLaVA와 IDEFICS-1은 비슷한 성능을 보였다고 한다.

문제는 object가 여러 개 있을 때라고 함.

예를 들어 scene에 다음이 있다고 해보자.

carrot, eggplant, corn, bowl, plate
 

명령이:

put eggplant in bowl
 

이면 모델은 단순히 “가장 가까운 물체를 잡기”가 아니라, 언어 instruction에서 지정한 eggplant를 정확히 찾아야 한다.

이걸 language grounding이라고 보면 됩니다. 논문에서는 BridgeData V2 sink environment의 5개 language grounding task 평균에서, LLaVA가 IDEFICS-1보다 절대 success rate 기준 35% 높았다고 설명한다.

즉, LLaVA가 multi-object scene에서 “언어가 가리키는 대상”을 더 잘 잡았다는 뜻입니다.

 

그런데 Prismatic을 fine-tuning한 VLA policy는 LLaVA보다도 더 좋았습니다.

논문은 Prismatic이 simple single-object task와 multi-object language grounding task 모두에서 LLaVA보다 약 10% 절대 success rate 향상을 보였다고 말합니다.

저자들은 이 차이를 SigLIP + DINOv2 fusion 덕분이라고 보고있다.

 

 

Image Resolution - 

 

이미지 해상도는 224 * 224 를 썼다고 함.

 

Fine-Tuning Vision Encoder: 왜 freeze하지 않고 같이 학습했나?

보통 VLM을 할때는 freeze를 하는데 왜 여기선 freeze하지 않았나? VLA training에서는 vision encoder를 fine-tuning하는 것이 좋은 성능에 필수적이었다. 논문은 pretrained vision backbone이 precise robotic control에 필요한 fine-grained spatial detail을 충분히 포착하지 못할 수 있다고 가설을 세운다.

 

일반 VLM의 목표는 보통 이런 식이다.

이미지를 보고 질문에 답하기
이미지를 설명하기
object가 무엇인지 말하기
 

이때는 semantic feature가 중요합니다.

하지만 로봇 제어의 목표는 다르다.

어느 방향으로 몇 cm 움직일지
gripper를 어느 정도 열지
object를 어느 위치에서 잡을지
물체가 bowl 안에 들어가도록 어디로 이동할지
 

이건 훨씬 더 spatial하고 control-oriented 하다.

예를 들어 “eggplant”를 아는 것만으로는 부족하다.

  • eggplant의 center가 어디인가?
  • gripper가 접근 가능한 방향은 어디인가?
  • bowl의 opening은 어디인가?
  • object와 gripper 사이의 상대 위치가 어떻게 변하고 있는가?

이런 정보는 VLM pretraining에서 반드시 최적화된 정보가 아니다. 그래서 robot action prediction에 맞게 vision encoder까지 조정해야 했다고 볼 수 있다.

결국엔 로봇 제어는 단순 semantic recognition이 아니라 spatial-control alignment가 필요하기 때문에, VLM feature를 그대로 쓰는 것만으로는 부족하다.

Experiments - 

 

  • 여러 robot과 다양한 generalization 유형에서 평가할 때, OpenVLA는 기존 generalist robot policy들과 비교해 어떤 성능을 보이는가?
  • OpenVLA는 새로운 robot setup과 task에 효과적으로 fine-tuning될 수 있는가? 그리고 state-of-the-art data-efficient imitation learning approach와 비교해 어떤가?
  • OpenVLA model의 training과 inference에 필요한 계산 요구량을 줄이고 접근성을 높이기 위해 parameter-efficient fine-tuning과 quantization을 사용할 수 있는가? 성능과 계산량 사이에는 어떤 trade-off가 있는가?

 

Robot Setups and Tasks

OpenVLA의 실험은 모델이 단순히 하나의 로봇이나 하나의 환경에서만 잘 동작하는지를 보는 것이 아니라, 여러 로봇 embodiment와 다양한 일반화 조건에서 out-of-the-box policy로 동작할 수 있는지를 평가하는 데 초점이 있다.

저자들은 OpenVLA를 두 가지 실제 로봇 플랫폼에서 평가했다. 첫 번째는 BridgeData V2에서 사용된 WidowX robot이고, 두 번째는 RT-1과 RT-2 실험에서 사용된 mobile manipulator, 즉 논문에서 말하는 Google robot이다. 이 두 플랫폼은 기존 generalist robot policy 연구에서 자주 사용된 대표적인 평가 환경이다.

평가 task는 단순한 seen task만으로 구성되지 않는다. 저자들은 OpenVLA가 실제로 얼마나 잘 일반화하는지를 보기 위해 여러 일반화 축을 나누어 평가했다.

첫째는 visual generalization이다. 이는 학습 때 보지 못한 배경, distractor object, 물체의 색상이나 외형 변화가 있을 때도 올바르게 동작할 수 있는지를 평가한다.

둘째는 motion generalization이다. 물체의 위치나 orientation이 학습 때와 달라졌을 때도 로봇이 적절한 motion을 생성할 수 있는지를 본다.

셋째는 physical generalization이다. 물체의 크기나 형태가 달라져도 조작이 가능한지를 평가한다.

넷째는 semantic generalization이다. 학습 데이터에 없던 target object, instruction, 또는 인터넷 지식에 기반한 concept을 이해하고 수행할 수 있는지를 본다.

마지막으로 저자들은 language conditioning ability도 따로 평가했다. 여러 물체가 동시에 있는 장면에서, 사용자의 언어 지시가 가리키는 정확한 target object를 선택해 조작할 수 있는지를 확인한 것이다. 예를 들어 장면에 여러 물체가 있을 때 “빨간 병을 집어라”라고 하면, 단순히 가까운 물체가 아니라 언어 prompt에 맞는 물체를 조작해야 한다.

평가 규모는 BridgeData V2에서 17개 task, 각 10 trial로 총 170 rollout이며, Google robot에서는 12개 task, 각 5 trial로 총 60 rollout이다. 또한 모든 평가는 공정한 비교를 위해 A/B evaluation 방식으로 진행되었다. 즉, 각 모델은 동일한 task와 동일한 초기 로봇 및 물체 상태에서 비교되었다.

이 실험 설계의 핵심은 OpenVLA가 단순히 학습 데이터와 비슷한 상황에서만 동작하는지를 보는 것이 아니라, 새로운 물체, 새로운 배경, 새로운 위치, 새로운 언어 지시가 주어졌을 때도 robust하게 행동할 수 있는지를 검증한다는 점이다. 따라서 이 섹션은 OpenVLA의 성능 비교를 해석하기 위한 평가 조건을 정의하는 부분이라고 볼 수 있다.

 

모델                           파라미터          특징

RT-1-X 35M OpenX subset으로 학습한 Transformer robot policy
Octo 93M open-source generalist robot policy
RT-2-X 55B closed-source VLA, Internet-pretrained VLM 기반
OpenVLA 7B open-source VLA, DINOv2+SigLIP+Llama2 기반

 

논문은 RT-1-X와 Octo가 tested tasks에서 특히 distractor가 있을 때 올바른 object를 조작하지 못하거나, 경우에 따라 로봇팔을 목적 없이 흔드는 행동을 보였다고 설명한다. 반면 RT-2-X와 OpenVLA는 distractor가 있어도 target object에 접근하고, target orientation에 맞춰 end-effector를 정렬하며, 불안정한 grasp 같은 실수에서 회복하는 더 robust한 행동을 보였다고 한다.

 

BridgeData V2 / WidowX 결과

BridgeData V2에서는 총 17개 task × 10 trials = 170 rollouts로 평가했다. task는 visual generalization, motion generalization, physical generalization, semantic generalization, language grounding을 포함한다.

요약하자면 

모델평균                                                                            성공률

RT-1-X 18.5 ± 2.7%
Octo 20.0 ± 2.6%
RT-2-X 50.6 ± 3.5%
OpenVLA 70.6 ± 3.2%

 

Parameter-Efficient Fine-Tuning

저자는 성능 뿐만 아니라 LoRA를 통해 더 가벼움을 강조했다. 또한 OpenVLA를 새 로봇 task에 fine-tuning할 때, 전체 7B parameter를 다 학습하지 않고도 거의 같은 성능을 낼 수 있는가도 본 항목이다.

이 표에서 보여주는 것은 마지막 layer만으로 finetune 하는 것은 충분하지 않고 frozen vision도 성능을 잘 높이지 못했다는 것이다. Sandwitch 도 괜찮지만 효율적인 측면에선 LoRA가 더 좋다는 것을 실제로 보여준다.

 

Memory-Efficient Inference via Quantization

먼저 ,

Quantization?

Quantization은 모델 weight를 더 낮은 precision으로 저장하고 계산하는 방식이다.

예를 들어 원래는:

bfloat16: weight 하나를 16-bit로 표현
 

인데, quantization을 하면:

int8: weight 하나를 8-bit로 표현
int4: weight 하나를 4-bit로 표현
 

처럼 줄인다.

메모리 사용량은 줄어들지만, 계산 overhead나 표현력 손실 때문에 inference speed나 accuracy가 떨어질 수 있다.

 

결론적으로

이 섹션의 핵심은 OpenVLA를 inference할 때 GPU 메모리를 줄이면서도 real-world robot 성능을 유지할 수 있는가이다.

 

 

핵심은 int4가 bfloat16과 거의 같은 success rate를 보이면서 VRAM을 16.8GB → 7.0GB로 줄였다는 것

 

OpenVLA는 4-bit quantization을 사용하면 약 7GB VRAM으로도 real-world robot inference가 가능하고, success rate도 거의 유지된다.

 

이건 일반 연구실 입장에서 중요하다. 예를 들어 16GB 또는 24GB VRAM GPU에서도 OpenVLA inference를 돌릴 가능성이 생기긴다. 논문에서는 RTX 4090 같은 consumer GPU에서 bfloat16 기준 약 6Hz로 실행된다고도 보고한다.

 

 

+ Recent posts