이번에 리뷰해볼 논문은 OpenVLA: An Open-Source Vision-Language-Action Model 라는 VLA 논문입니다. 이전 RT-2논문과는 다르게, 이 논문의 경우, Open-Source로 Vision-Language-Action Model을 공개하였으며, 970k개의 실제 로봇 시연 데이터로 훈련 했다고 합니다.(Open X-Embodiment 데이터셋)
논문 주소:https://arxiv.org/pdf/2406.09246
깃 허브: https://openvla.github.io/
Abstract
주어진 "OpenVLA"에 대한 내용을 요약해 드리겠습니다.
OpenVLA는 오픈소스 VLA(Vision-Language-Action) 모델로, 인터넷 규모의 시각-언어 데이터와 97만 개의 실제 로봇 시연 데이터를 결합하여 70억 개 파라미터로 훈련되었습니다. 이는 기존의 비공개 VLA 모델들의 접근성 및 활용 제한 문제를 해결하고자 개발되었습니다.
OpenVLA는 Llama2 언어 모델과 DINOv2, SigLIP의 시각 인코더를 결합한 아키텍처를 활용하며, 다양한 데이터와 새로운 모델 구성 요소를 통해 일반적인 로봇 조작 작업에서 강력한 성능을 발휘합니다. 특히, RT-2-X(55B) 대비 7배 적은 파라미터 수로도 29개 작업에서 16.5% 더 높은 작업 성공률을 기록하며 뛰어난 효율성을 입증했습니다.
또한, OpenVLA는 새로운 환경에서 효과적인 파인튜닝이 가능하며, 다중 작업 및 강력한 Language Grounding 환경에서 우수한 일반화 성능을 보여, Diffusion Policy와 같은 기존 모방 학습 방법을 20.4% 능가하는 성과를 달성했습니다.
계산 효율성 측면에서는 LoRA(Low-rank adaptation)를 통한 파인튜닝과 양자화를 통해 성능 저하 없이 효율성을 유지할 수 있음을 증명했습니다. 마지막으로, 모델 체크포인트, 파인튜닝 노트북, PyTorch 코드베이스를 공개하여 Open-X Embodiment 데이터셋을 활용한 대규모 VLA 훈련을 적극 지원합니다.
1. Introduce
기존 로봇 조작 정책이 훈련 데이터 범위를 넘어 일반화하기 어려운 문제를 해결하기 위해, 인터넷 규모 데이터에서 학습된 Vision-Language Foundation Model의 강력한 일반화 능력이 주목받고 있습니다. 최근 연구들은 사전 훈련된 VLM을 로봇에 적용하려 시도했으나, 기존 Vision-Language-Action 모델들은 폐쇄적 환경 및 새로운 로봇/환경 적용 연구 부족으로 널리 활용되지 못했습니다. 이에 따라 효과적인 파인튜닝이 가능한 오픈소스 VLA의 필요성이 제기되었습니다.
이러한 요구에 부응하여 OpenVLA가 개발되었습니다. OpenVLA는 7B 파라미터를 가진 오픈소스 VLA 모델로, 97만 개의 로봇 조작 시연 데이터(Open-X Embodiment Dataset 기반)로 파인튜닝된 VLM 백본을 포함합니다. OpenVLA는 RT-2X(55B) 대비 16.5% 높은 성능을 기록하며, 다양한 로봇 모델에서 뛰어난 성능을 보입니다. 또한, 7개 조작 작업에 대한 파인튜닝 전략을 연구하여 기존 사전 훈련 정책 대비 높은 성능을 입증했습니다.
추가적으로, OpenVLA는 LoRA 및 모델 양자화 기법을 적용하여 소비자용 GPU에서도 파인튜닝을 가능하게 하며, 성능 저하 없이 효율적인 계산을 구현했습니다. 마지막으로, OpenVLA는 코드베이스와 파인튜닝 노트북을 오픈소스로 공개하여 대규모 VLA 훈련을 지원하고 로봇 연구 분야에서 VLA 활용을 촉진하는 것을 목표로 합니다.
2. Related Work
Visually-Conditioned Language Models
Vision-Language Model은 인터넷 규모의 데이터에서 이미지 입력과 언어 프롬프트를 기반으로 자연어를 생성하도록 훈련된 모델로, Visual QnA부터 객체 위치 추정까지 다양한 응용 프로그램에 활용됩니다. 최근 VLM의 주요 발전은 사전 훈련된 Vision Encoder와 Language Model의 특징을 결합하는 아키텍처에 의해 촉진되었으며, 이는 컴퓨터 비전과 자연어 모델링의 발전을 통합하여 강력한 multi-modal모델을 구축하는 데 기여했습니다.
초기에는 비전과 언어 기능 간의 Cross-attention을 위한 다양한 아키텍처가 탐구되었으나, 최근의 오픈소스 VLM들은 "Patch-token" 접근법으로 수렴했습니다. 이 방식은 사전 훈련된 Visual Transformer의 패치 특징을 토큰으로 처리하여 언어 모델의 입력 공간으로 투영하는 것으로, 이러한 단순성 덕분에 기존 VLM 훈련 도구를 쉽게 재사용할 수 있습니다.
본 연구에서는 이러한 도구들을 활용하여Vision-Language-Action 훈련을 확장합니다. 특히, Karamcheti et al. 논문에서 제안된 VLM을 사전 훈련된 백본으로 사용하는데, 이 백본은 DINOv2에서 낮은 수준의 공간 정보를, SigLIP에서 높은 수준의 의미 정보를 융합하여 시각적 일반화에 도움을 줍니다.
Generalist Robot Policies
최근 로봇학의 추세는 대규모 로봇 데이터셋을 활용하여 Octo와 같은 다중 작업 "generalist" 로봇 정책을 훈련하는 방향입니다. 이러한 정책은 여러 로봇을 제어하고 새로운 설정에 유연하게 파인튜닝될 수 있습니다.
OpenVLA와 이러한 기존 접근법(예: Octo)의 주요 차이점은 모델 아키텍처에 있습니다. Octo와 같은 이전 연구들이 언어 임베딩이나 시각 인코더와 같은 사전 훈련된 구성 요소를 사용하고 나머지 모델 구성 요소는 처음부터 학습하는 반면, OpenVLA는 VLM(Vision-Language Model)을 직접 파인튜닝하여 로봇 행동을 생성하는 End-to-End 방식을 채택합니다. 이 방식은 로봇 동작을 언어 모델 어휘 내의 토큰으로 처리합니다.
실험 결과, 이 단순하지만 확장 가능한 파이프라인이 기존의 일반적인 로봇 정책보다 성능과 일반화 능력을 크게 향상시킨다는 것이 입증되었습니다.
Vision-Language-Action Models
로봇 공학에서는 시각적 상태 표현, 객체 탐지, 고수준 계획 등 다양한 목적으로 VLM(Vision-Language Model) 활용이 탐구되어 왔습니다. 최근 연구들은 VLM을 로봇 행동 예측에 직접 통합한 VLA모델을 개발했는데, 이는 다음과 같은 세 가지 주요 이점을 제공합니다:
- 대규모 인터넷 데이터를 통해 사전 훈련된 비전 및 언어 구성 요소를 정렬할 수 있습니다.
- 로봇 제어에 특화되지 않은 일반적인 아키텍처를 사용하여 확장 가능한 VLM 훈련 인프라를 활용하고 대규모 정책을 훈련할 수 있습니다.
- VLM의 빠른 발전을 로봇 제어에 직접적으로 적용할 수 있는 경로를 제공합니다.
그러나 기존 VLA 연구(예: RT-2)는 대부분 단일 로봇이나 시뮬레이션 환경에 집중되어 일반화가 부족하고, 폐쇄적이거나 새로운 로봇 설정에 대한 효율적인 파인튜닝을 지원하지 못하는 한계가 있었습니다.
이러한 한계를 극복하며, OpenVLA는 RT-2와 여러 중요한 측면에서 차별화됩니다:
- 성능 및 효율성: 강력한 오픈 VLM 백본과 풍부한 로봇 사전 훈련 데이터를 결합하여, 훨씬 작은 모델 크기임에도 불구하고 실험에서 RT-2-X를 능가하는 성능을 보였습니다.
- 파인튜닝 탐구: RT-2-X와 달리 새로운 로봇 및 환경 설정에 대한 파인튜닝 방법을 철저히 연구했습니다.
- 효율성 기술 도입: 현대적인 파라미터 효율적인 파인튜닝(예: LoRA) 및 양자화 접근법이 VLA에 효과적임을 입증했습니다.
- 오픈소스 공개: OpenVLA는 최초로 오픈 소스로 제공되는 일반적인 VLA로, 향후 VLA 훈련, 데이터 혼합, 목표 설정 및 추론 연구를 적극적으로 지원합니다.
3. The OpenVLA Model
OpenVLA 모델은 70억 개 파라미터의 VLA(Vision-Language-Action) 모델로, Open X-Embodiment 데이터셋의 97만 개 로봇 시연을 통해 학습되었습니다. 이 모델은 VLA 개발의 최적 모델 백본, 데이터셋, 하이퍼파라미터 등에 대한 미탐구된 질문들을 해결하고자 합니다.
본 연구(또는 해당 섹션)에서는 OpenVLA 개발 접근 방식을 자세히 설명하고 주요 학습 결과를 요약합니다. 구체적으로, 현대 VLM에 대한 간략한 개요를 시작으로, 기본적인 훈련 레시피와 데이터셋, 주요 설계 결정, 그리고 훈련 및 추론을 위한 인프라 세부 사항을 다룰 것입니다.
3.1 Preliminaries: Vision-Language Models
최근 대부분의 Vision-Language Model(VLM) 아키텍처는 세 가지 주요 부분으로 구성됩니다: 이미지 입력을 "Image patch Embedding"으로 매핑하는 Visual Encoder, 그 출력 임베딩을 언어 모델의 입력 공간으로 매핑하는 Projector, 그리고 LLM 백본입니다. VLM은 비전 및 언어 데이터를 결합하여 텍스트 토큰 예측을 목표로 학습됩니다.
본 연구는 이러한 표준 아키텍처를 따르는 Prismatic-7B VLM을 기반으로 진행됩니다. 이 모델은 6억 개 파라미터의 Visual Encoder, 작은 2-계층 MLP 프로젝터, 그리고 70억 개 파라미터의 Llama2 언어 모델 백본을 사용합니다. 특히 Prismatic은 사전 학습된 SigLIP와 DinoV2 모델로 구성된 두 부분의 Visual Encoder를 활용합니다. 입력 이미지 패치는 두 인코더를 통해 처리되며, 그 결과 피처 벡터들이 채널별로 결합됩니다. DinoV2 피처의 추가는 공간적 추론을 개선하는 것으로 알려져 로봇 제어에 특히 유용합니다.
SigLIP, DinoV2, Llama2의 훈련 데이터는 공개되지 않았지만, 아마도 수조 개의 인터넷 소스에서 가져온 이미지-텍스트, 이미지 전용, 텍스트 전용 데이터일 것으로 추정됩니다. Prismatic VLM은 이러한 구성 요소 위에 약 100만 개의 이미지-텍스트 및 텍스트 전용 데이터 샘플을 포함하는 LLaVA1.5 데이터 혼합을 사용하여 파인튜닝되었습니다.
3.2. OpenVLA Training Procedure
OpenVLA는 사전 학습된 Prismatic-7B VLM 백본을 로봇 행동 예측을 위해 파인튜닝합니다. 이 과정에서 로봇 행동 예측 문제는 관찰 이미지와 자연어 작업 지침이 로봇 행동 문자열로 매핑되는 "Vision-Language" 작업으로 정의됩니다.
VLM의 언어 모델 백본이 로봇 행동을 예측하도록 하기 위해, 로봇 행동을 연속적인 값에서 이산 토큰(discrete token)으로 매핑하여 LLM 출력 공간에 표현합니다. 각 행동 차원은 개별적으로 256개의 구간으로 이산화되며, 이 구간 너비는 훈련 데이터에서 행동의 에서 quantile사이를 균등하게 나누어 설정됩니다. Min-Max 대신 분위수를 사용함으로써 outlier 행동에 의한 구간 확장 없이 효과적인 세분성을 유지할 수 있습니다.
이산화를 통해 N차원의 로봇 행동은 N개의 이산 정수()로 표현됩니다. 하지만 OpenVLA의 언어 백본에서 사용되는 Llama Tokenizer는 256개의 이산화된 행동을 처리하기에 너무 적은 100개의 "Special Token"만 예약되어 있습니다. 이를 해결하기 위해, Llama Tokenizer 어휘에서 사용 빈도가 낮은 마지막 256개의 토큰을 동작 토큰으로 덮어씌웁니다. 행동이 행동 시퀀스로 처리되면, OpenVLA는 표준 다음 토큰(next-token) 예측 목표로 훈련되며, 예측된 동작 토큰에 대해서만 교차 엔트로피 손실(cross entropy loss)을 평가합니다.
3.3 Training Data
OpenVLA 훈련 데이터셋은 다양한 로봇 구현, 장면, 작업을 포착하여 최종 모델이 다양한 로봇을 즉시 제어하고 새로운 설정에 효율적으로 파인튜닝될 수 있도록 구축되었습니다. 연구진은 70개 이상의 개발 로봇 데이터셋과 200만 개 이상의 로봇 궤적을 포함하는 Open X-Embodiment (OpenX) 데이터셋을 기반으로 훈련 데이터셋을 구성하고, 여러 단계의 데이터 큐레이션을 적용했습니다.
이 큐레이션의 목표는 두 가지입니다:
- 일관된 입출력 공간 보장: Open X-Embodiment Collaboration 및 Octo 모델 지침을 따라, 3인칭 카메라가 있는 조작 데이터셋만 포함하고 단일 팔 엔드 이펙터 제어만 사용하도록 제한했습니다.
- 구현, 작업, 장면의 균형 잡힌 조합 보장: 첫 번째 필터링을 통과한 데이터셋에 Octo의 데이터 혼합 가중치를 활용하여, 덜 다양한 데이터셋은 하향 조정하고 다양성이 큰 데이터셋은 상향 조정했습니다.
또한, Octo 출시 이후 OpenX에 추가된 DROID 데이터셋을 10%의 혼합 가중치로 포함하는 실험을 진행했으나, DROID의 행동 토큰 정확도가 낮게 유지되어 훈련 품질 유지를 위해 훈련의 마지막 3분의 1 동안 DROID를 제외했습니다. 이는 향후 더 큰 혼합 가중치나 모델이 필요할 수 있음을 시사합니다.
3.4 OpenVLA Design Decisions
OpenVLA 모델을 개발하는 과정에서, 최종 모델 훈련에 앞서 소규모 실험을 통해 다양한 설계 방식을 탐색했습니다. 특히, 전체 OpenX 혼합 데이터셋 대신 BridgeData V2를 사용하여 OpenVLA 모델을 훈련하고 평가함으로써 훈련 속도를 높이고 계산 비용을 절감하며 초기 실험을 진행했습니다. 이 실험적 탐색을 통해 얻은 주요 학습 내용은 다음과 같습니다.
VLM Backbone.
연구 초기, 다양한 VLM(Vision-Language Model) 백본을 실험했으며, 로봇 행동 예측을 위해 IDEFICS-1, LLaVA, 그리고 Prismatic을 fine-tuneing하여 테스트했습니다.
실험 결과, LLaVA와 IDEFICS-1은 장면에 단일 객체만 있는 작업에서는 유사한 성능을 보였으나, LLaVA가 여러 객체가 있는 장면에서 언어 지침에 따라 올바른 객체를 조작하는 언어 기반 제어에서 더 강력한 성능을 보였습니다(BridgeData V2 싱크 환경에서 IDEFICS-1보다 35% 높은 성공률).
하지만 파인튜닝된 Prismatic VLM 정책은 LLaVA 정책을 약 10% 초과하는 절대 성공률을 기록하며 추가적인 성능 향상을 보였습니다. 이는 단순 단일 객체 작업과 다중 객체 언어 기반 작업 모두에서 나타났습니다. 연구진은 이 성능 차이가 SigLIP-DinoV2 백본의 융합을 통한 Prismatic의 개선된 공간적 추론 능력 덕분으로 추정합니다.
결과적으로, Prismatic은 우수한 성능뿐만 아니라 모듈화되고 사용하기 쉬운 코드베이스를 제공하여 최종적으로 OpenVLA 모델의 백본으로 선택되었습니다.
Image Resolution.
입력 이미지 해상도는 Vision-Language-Action 훈련의 계산 비용에 크게 영향을 미치며, 해상도가 높을수록 훈련 계산이 제곱 비율로 증가합니다. 연구진은 224x224px와 384x384px 해상도의 VLA 모델을 비교했지만, 성능 차이는 발견하지 못했습니다. 반면, 384x384px 해상도는 훈련 시간이 3배 더 오래 걸리는 것으로 확인되었습니다.
이에 따라 284x284px 해상도를 최종 선택했습니다. 많은 Vision-Language Model 벤치마크에서는 해상도 증가가 성능 향상으로 이어지지만, VLA에서는 아직 이러한 경향이 관찰되지 않았습니다.
Fine-Tuning Vision Encoder.
VLM(Vision-Language Model)에 대한 이전 연구에서는 훈련 중에 Vision encoder를 고정할 때 더 높은 성능을 보인다고 보고했습니다. 이는 고정된 인코더가 인터넷 규모의 사전 학습에서 얻은 강력한 특징을 더 잘 보존하기 때문이라는 직관적인 설명이 있었습니다.
그러나 본 연구의 저자들은 Vision-Language-Action 훈련 시 Vision encoder를 Fine-tuning하는 것이 좋은 VLA 성능을 달성하는 데 필수적이라는 것을 발견했습니다. 저자들은 사전 훈련된 Vision backbone이 로봇 제어에 필요한 장면의 중요한 부분에 대한 세밀한 공간 정보를 충분히 포착하지 못해 정밀한 로봇 제어를 어렵게 할 수 있다고 가정했습니다. 즉, 로봇의 정교한 움직임을 위해서는 Vision encoder가 로봇 환경의 특수성에 맞춰 추가 학습되어야 한다는 의미입니다.
Training Epochs
일반적인 LLM 또는 VLM 훈련이 데이터셋을 한두 번 반복하는 것으로 마무리되는 것과는 대조적으로, Vision-Language-Action 훈련에서는 데이터셋을 훨씬 더 많이 반복하는 것이 중요함이 밝혀졌습니다.
실제 로봇 성능은 훈련된 Action token 정확도가 95%를 초과할 때까지 지속적으로 향상되는 경향을 보였습니다. 이에 따라 최종 훈련 실행에서는 데이터셋을 27번 반복하여 학습을 진행했습니다.
Learning Rate
VLA 훈련을 위해 여러 크기의 학습률을 탐색했으며, 2e-5 라는 고정된 학습률을 사용할 때, 가장 좋은 결과를 얻었습니다.(이는 VLM 사전 훈련 중 사용된 학습률과 동일합니다.) 학습률 Warmup은 이득을 제공하지 않았다고 판단했습니다.
3.5 Infrastructure for Training and Inference
최종 OpenVLA 모델은 64개의 A100 GPU 클러스터에서 14일 동안, 총 21,500 A100 시간을 들여 훈련되었으며, 배치 크기는 2048이었습니다.
추론 시 OpenVLA는 bfloat16 정밀도로 로드될 때 15GB의 GPU 메모리를 필요로 하며, 하나의 NVIDIA RTX 4090 GPU에서 약 6Hz 속도로 실행됩니다 (컴파일이나 추론 속도 향상을 위한 투기적 디코딩(speculative decoding)은 사용하지 않음). OpenVLA의 메모리 용량은 양자화를 통해 줄일 수 있으며, 이는 실제 로봇 작업 성능에 영향을 미치지 않습니다. 다양한 소비자 및 서버급 GPU에서의 추론 속도는 그림 6에서 확인할 수 있습니다.
연구팀은 로봇에 대한 행동 예측을 실시간으로 원격 스트리밍할 수 있도록 원격 VLA 추론 서버를 구현했습니다. 이 서버를 통해 강력한 로컬 컴퓨팅 장치 없이도 로봇을 제어할 수 있으며, 이 원격 솔루션은 오픈소스 코드 릴리스의 일환으로 제공됩니다 (4절 참고).
4. The OpenVLA Codebase
모델과 함께, OpenVLA codebase를 공개합니다. 이는 VLA 모델 훈련을 위한 모듈화된 pytorch codebase로, (see https://openvla.github.io) 를 참고 바랍니다. 이 codebase는 개별 GPU에서 VLA를 fine-tuning하는 것부터 다중 노드 GPU 클러스터에서 수 십억 파라미터를 가진 VLA 를 훈련하는 것까지 확장 가능하며, automatic mixed precision, fully sharded data parallelism와 같은 대형 Transformer 모델 훈련을 위한 최신 기법을 제공합니다. OpenVLA HuggingFace의 AutoModel 클래스와 통합되고, LoRA Fine-tuning 및 Quantized model inference 를 제공합니다.
5. Experiments
- OpenVLA의 실험 평가는 이 모델이 강력한 다중 로봇 제어 정책으로 즉시 활용 가능한지와 새로운 로봇 작업 파인튜닝을 위한 효과적인 초기화 지점이 될 수 있는지를 검증하는 데 중점을 둡니다.
- 다중 로봇 및 다양한 일반화 유형에 대해 평가할 때, OpenVLA는 기존의 일반적인 로봇 정책들과 어떻게 비교되는가?
- OpenVLA는 새로운 로봇 설정과 작업에 대해 효과적으로 파인튜닝될 수 있는가? 그리고 최첨단 데이터 효율적 모방 학습(state-of-the-art data-efficient imitation learning) 방법과 비교했을 때 성능은 어떠한가?
- Parameter-efficient finetuning과 quantization 기법을 사용하여 OpenVLA 모델의 훈련 및 추론에 필요한 계산 요구 사항을 줄이고, 이를 더 접근 가능하게 만들 수 있는가? 또한, performance-compute trade-offs 간의 관계는 어떠한가?
5.1 Direct Evaluations on Multiple Robot Platforms
Robot Setups and Tasks.
VLA의 "즉시 사용 가능" 성능을 평가하기 위해 두 가지 로봇 플랫폼이 사용되었습니다. 하나는 BridgeData V2 평가에 활용된 WidowX 로봇이고, 다른 하나는 RT-1 및 RT-2 평가에 사용된 모바일 조작 로봇입니다. 이 두 플랫폼은 일반적인 로봇 정책 평가에 널리 쓰여왔습니다.
각 환경에서는 여러 일반화 축을 포괄하는 종합적인 작업 세트를 정의하여 평가했습니다. 여기에는 보지 못한 배경, 방해물, 객체의 색상/모양을 포함하는 시각적 일반화; 보지 못한 객체 위치/방향을 다루는 운동 일반화; 보지 못한 객체 크기/형태에 대한 물리적 일반화; 그리고 보지 못한 목표 객체, 지침 및 인터넷 개념을 포함하는 의미적 일반화가 포함됩니다.
또한, 여러 객체가 있는 장면에서 언어 조건화 능력을 평가하여, 정책이 사용자 지침에 따라 올바른 목표 객체를 조작할 수 있는지를 테스트했습니다.
평가 규모는 BridgeData V2 실험에서 170회의 롤아웃(17개 작업 각각 10회 실험)과 Google 로봇 실험에서 60회의 롤아웃(12개 작업 각각 5회 실험)으로 진행되었습니다. 모든 평가는 A/B 테스트 방식으로 이루어졌으며, 공정한 비교를 위해 동일한 작업과 초기 로봇 및 객체 상태 세트를 사용했습니다.
Comparisons.
OpenVLA의 성능은 세 가지 이전의 일반적인 조작 정책, 즉 RT-1-X(35M 파라미터), Octo(93M 파라미터), 그리고 RT-2-X(55B 파라미터)와 비교되었습니다. RT-1-X와 Octo는 OpenX 데이터셋의 하위 집합에서 처음부터 학습된 Transformer 정책이며, Octo는 최신 오픈소스 모델입니다. 반면 RT-2-X는 인터넷에서 사전 훈련된 비전 및 언어 백본을 활용하는 최신 Vision-Language-Action 모델입니다.
평가 결과:
- RT-1-X 및 Octo의 한계: BridgeData V2 (그림 3) 및 Google 로봇 (그림 4) 평가에서 RT-1-X와 Octo는 테스트된 작업에서 어려움을 겪었고, 특히 방해물이 있을 때 자주 실패하며 무의미한 팔 동작을 보이기도 했습니다. 이는 평가가 인터넷에서 사전 훈련된 VLA 모델을 대상으로 더 높은 수준의 일반화를 테스트하기 때문에, 인터넷 사전 훈련이 없는 모델의 낮은 성능은 예상된 결과입니다.
- RT-2-X의 우수성: RT-2-X는 RT-1-X와 Octo를 명확하게 능가하며, 로봇 작업을 위한 대규모 사전 훈련된 VLM의 이점을 잘 보여주었습니다.
- OpenVLA의 탁월한 성능:
- Google 로봇 평가: OpenVLA는 RT-2-X와 비슷한 성능을 보였습니다.
- BridgeData V2 평가: OpenVLA는 RT-2-X보다 크게 우수한 성능을 나타냈습니다.
- 주목할 만한 효율성: OpenVLA는 RT-2-X(55B 파라미터)보다 훨씬 작은 모델(7B 파라미터)임에도 불구하고 뛰어난 성능을 달성했습니다.
- 질적 분석: RT-2-X와 OpenVLA는 다른 모델들보다 훨씬 더 견고한 행동을 보였습니다. 예를 들어, 방해물이 있을 때 올바른 객체로 접근하고, End-effector를 목표 객체 방향에 제대로 정렬하며, 물건을 불안정하게 잡았을 때도 실수를 회복하는 능력을 보여주었습니다.
성능 차이 분석:
RT-2-X는 그림 3에서 보여지듯이 의미적 일반화 작업에서 더 높은 성능을 보였는데, 이는 RT-2-X가 더 큰 규모의 인터넷 사전 훈련 데이터를 사용하고 로봇 행동 데이터와 함께 미세 조정하여 사전 훈련 지식을 더 잘 보존하기 때문입니다.
그러나 OpenVLA는 BridgeData V2와 Google 로봇 평가의 다른 작업 범주에서 RT-2-X와 비슷하거나 더 나은 성능을 보였습니다. 이러한 성능 차이는 다음 요인들의 조합으로 설명될 수 있습니다:
- 더 큰 훈련 데이터셋: OpenVLA는 970k개의 궤적을 포함하는 훨씬 더 큰 훈련 데이터셋을 구성했습니다 (RT-2의 경우 350k개).
- 정교한 데이터 큐레이션: 훈련 데이터셋을 더 신중하게 정리했습니다 (예: Bridge 데이터셋에서 모든 Zero Action 필터링).
- 융합된 Vision Encoder: OpenVLA는 사전 훈련된 의미적 및 공간적 특성을 결합한 융합된 Vision Encoder를 사용합니다.
5.2 Data-Efficient Adaptation to New Robot Setups
이전의 연구들은 주로 VLAs를 "즉시 사용 가능" 상태로 직접 평가하는 데 중점을 두었으며, VLA 모델을 새로운 작업과 로봇 설정에 효과적으로 Fine-tune 하는 방법은 거의 탐구되지 않았습니다. 그러나 이는 VLA 모델의 널리 사용을 위한 중요한 요소 입니다. 이 절에서는 OpenVLA가 새로운 실제 로봇 설정에 빠르게 적응할 수 있는 능력을 조사합니다.
Robot setups and tasks.
이 연구는 OpenVLA 모델을 작은 데이터셋(10~150개의 시연)을 활용해 전체 모델 파라미터를 파인튜닝하는 방법을 테스트합니다(그림 5 참고).
연구진은 OpenVLA를 두 가지 다른 로봇 환경에서 평가합니다:
- Franka-Tabletop: 고정된 테이블에 장착된 Franka Emika Panda 7-자유도(DoF) 로봇팔.
- Franka-DROID: 최근 출시된 DROID 데이터셋의 Franka 로봇팔 설정으로, 이동 가능한 스탠딩 책상에 장착되어 있습니다.
이 두 설정은 각각 5Hz와 15Hz의 비 차단 컨트롤러를 사용합니다. Franka 로봇팔은 로봇 학습 커뮤니티에서 널리 사용되기 때문에 OpenVLA 파인튜닝 실험의 목표 구현체로 선정되었습니다. 연구진은 OpenVLA의 다양한 사용 사례 적용 가능성을 확인하기 위해 서로 다른 제어 주파수 설정에서 테스트를 진행했습니다.
Comparisons.
본 연구는 OpenVLA의 파인튜닝 성능을 평가하기 위해 여러 기준선과 비교합니다.
비교 대상 모델:
- Diffusion Policy: 최첨단 데이터 효율적 모방 학습 접근 방식이며, OpenVLA의 입출력 사양에 맞춘 버전도 비교합니다.
- Octo: 현재 파인튜닝을 지원하는 최고의 일반적인 정책으로, 테스트 데이터셋에 대해 파인튜닝된 모델과 비교합니다. (RT-2-X는 추론 API를 통해 파인튜닝을 지원하지 않음).
- OpenVLA: 동일한 목표 데이터셋에 대해 파인튜닝된 결과 정책.
- OpenVLA (scratch): 대규모 로봇 사전 훈련의 이점을 평가하기 위한 제거 실험으로, OpenX에서 사전 훈련된 OpenVLA 모델이 아닌, 기본 Prismatic VLM을 목표 로봇 설정에 대해 직접 파인튜닝한 모델.
주요 결과 (그림 5 참고):
- Diffusion Policy의 강점: "당근을 그릇에 넣기"나 "옥수수를 냄비에 붓기"와 같은 좁고 단일 지침 작업에서는 Diffusion Policy 두 버전이 Octo와 OpenVLA보다 경쟁력 있거나 더 우수한 성능을 보였습니다.
- 사전 훈련된 일반 정책의 강점: 언어 조건화가 필요한 다중 객체 작업과 더 다양한 파인튜닝 작업에서는 Octo와 OpenVLA 같은 사전 훈련된 일반 정책이 더 나은 성능을 보였습니다. 이는 OpenVLA(scratch)의 낮은 성능에서 OpenX 사전 훈련의 이점을 확인할 수 있습니다.
- OpenVLA의 종합적 우수성: OpenVLA는 가장 높은 평균 성능을 기록했습니다. 특히, 모든 테스트된 작업에서 최소 50%의 성공률을 달성한 유일한 접근 방식으로, 다양한 언어 지침이 포함된 모방 학습에서 강력한 기본 옵션이 될 수 있음을 시사합니다.
- 향후 개선 방향: 더 좁고 정밀한 작업에서는 Diffusion Policy가 여전히 더 부드럽고 정밀한 궤적을 보여주므로, Diffusion Policy에 구현된 action chunking 및 temporal smoothing 기법을 OpenVLA에 통합하는 것이 미래 작업에서 동일한 수준의 정밀도를 달성할 유망한 방향이 될 수 있습니다.
5.3 Parameter-Efficient Fine-Tuning
이전 절에서 설명된 OpenVLA의 전체 파인튜닝은 높은 성능을 달성했지만, 각 작업당 8개의 A100 GPU에서 5~15시간이 소요되어 계산 비용이 여전히 높습니다. 이에 본 연구는 더 계산 효율적이고 파라미터 효율적인 파인튜닝 접근 방식들을 탐구했습니다.
- 전체 파인튜닝: 모든 모델 가중치를 조정합니다.
- 마지막 레이어만 파인튜닝: 트랜스포머 백본의 마지막 레이어와 토큰 임베딩 행렬만 조정합니다.
- 비전 인코더 고정: 비전 인코더는 고정하고 나머지 모든 가중치를 조정합니다.
- 샌드위치 파인튜닝: 비전 인코더, 토큰 임베딩 행렬, 마지막 레이어만 고정 해제하고 조정합니다.
- LoRA (Low-rank adaptation): Hu et al.의 저랭크 적응 기법을 사용하여 모델의 모든 선형 레이어에 여러 랭크 값을 적용합니다.
- 연구팀은 다음 파인튜닝 기법들을 비교했습니다:
평가 결과:
- 성능 저하: 네트워크의 마지막 레이어만 파인튜닝하거나 비전 인코더를 고정하는 방법은 성능이 낮게 나타났습니다. 이는 목표 장면에 맞춰 시각적 특징을 추가로 적응시키는 것이 매우 중요하다는 것을 시사합니다.
- 샌드위치 파인튜닝: 비전 인코더를 파인튜닝하면서도 전체 LLM 백본을 파인튜닝하지 않아, 더 적은 GPU 메모리를 소비하며 좋은 성능을 보였습니다.
- LoRA의 우수성: LoRA는 성능과 훈련 메모리 소비 사이에서 가장 최적의 균형을 제공했습니다. '샌드위치 파인튜닝'을 능가하면서도 전체 파인튜닝 성능과 거의 동등한 수준을 달성했으며, 파라미터의 단 1.4%만 조정했습니다. 또한, LoRA 랭크가 정책 성능에 미치는 영향은 미미하여, 기본값으로 r=32를 사용할 것을 권장했습니다.
결론적으로, LoRA를 사용하면 OpenVLA를 새로운 작업에 대해 단일 A100 GPU에서 10~15시간 내에 파인튜닝할 수 있으며, 이는 전체 파인튜닝 대비 8배 적은 계산량으로 상당한 효율성을 제공합니다.
5.4 Memory-Efficient Inference via Quantization
OpenVLA는 70억 개의 파라미터를 가진 모델로, 1억 개 미만의 파라미터를 가진 Octo와 같은 기존 오픈소스 로봇 정책보다 추론 시 더 많은 메모리를 소비합니다. 이러한 문제를 해결하고 VLA 정책의 접근성을 높이기 위해, LLM 서빙의 최신 방식을 따라 bfloat16 정밀도로 모델을 저장하고 불러와 추론 시 메모리 사용량을 절반(15GB)으로 줄였습니다. 이를 통해 16GB GPU 메모리로도 OpenVLA를 서빙할 수 있게 됩니다.
이어서 연구는 LLM 서빙을 위해 개발된 현대적인 양자화 기법을 사용하여 추론에 필요한 메모리를 추가로 줄일 수 있는지 테스트했습니다. 양자화는 네트워크 가중치를 낮은 정밀도로 로드하여 메모리 요구 사항을 줄이지만, 추론 속도와 정확도가 감소할 수 있습니다.
실험 결과:
- 양자화 정밀도별 메모리 및 성능: OpenVLA 모델을 8비트와 4비트 정밀도로 양자화하여 8개 BridgeData V2 작업에서 테스트했습니다. 결과는 표 2(메모리 및 성능)와 그림 6(제어 주파수)에 보고됩니다.
- 8비트 양자화: 대부분의 GPU에서 추론 속도가 느려지는 현상을 관찰했는데, 이는 양자화 작업의 추가 오버헤드 때문으로 분석됩니다. 특히 A5000 GPU에서는 1.2Hz로만 실행 가능하여, 5Hz 비차단 컨트롤러를 사용하는 BridgeData V2 작업의 시스템 동역학과 큰 차이를 보이며 성능이 상당히 감소했습니다.
- 4비트 양자화: bfloat16 반정밀도 추론과 유사한 성능을 보이면서도 GPU 메모리를 절반 미만으로 사용했습니다. A5000에서 3Hz로 실행 가능하여 데이터 수집 중의 시스템 동역학에 더 가깝게 일치함을 확인했습니다. 4비트 추론은 GPU 메모리 전송 감소 덕분에 양자화 오버헤드를 상쇄하고 더 높은 처리량을 달성했습니다.
결론적으로, 4비트 양자화는 OpenVLA의 추론 메모리 요구 사항을 크게 줄이면서도 성능 저하를 최소화하여, 다양한 소비자 및 서버급 GPU에서 VLA 정책의 실용적인 배포 가능성을 높였습니다.
6. Discussion and Limitations
이 연구는 최첨단 오픈 소스 VLA(Vision-Language-Action) 모델인 OpenVLA를 소개합니다. OpenVLA는 다양한 로봇 구현체에서 강력한 성능을 보여주었으며, 파라미터 효율적인 파인튜닝(fine-tuning) 기법을 통해 새로운 로봇 설정에 쉽게 적응할 수 있음을 입증했습니다.
현재 OpenVLA 모델에는 몇 가지 한계점이 있으며, 이는 향후 연구의 중요한 방향을 제시합니다.
- 단일 이미지 관찰 이상의 감각 입력 지원: 현재 OpenVLA는 단일 이미지 관찰만을 지원하지만, 실제 로봇 환경은 다양한 감각 입력(여러 이미지, 자기 인식 입력, 관찰 기록 등)을 활용합니다. 이미지와 텍스트 데이터가 교차된 방식으로 사전 훈련된 VLM을 활용하면 이러한 유연한 입력을 지원하는 VLA 파인튜닝이 가능할 것입니다.
- 추론 처리량 개선: ALOHA와 같이 50Hz로 동작하는 고주파 제어 설정에서 VLA 제어를 가능하게 하려면 OpenVLA의 추론 처리량을 개선하는 것이 중요합니다. 이는 더 섬세하고 양손 조작 작업에 대한 VLA 테스트 가능성을 열어줍니다. action chunking 또는speculative decoding과 같은 추론 시간 최적화 기법이 잠재적인 해결책이 될 수 있습니다.
- 성능 신뢰성 향상: OpenVLA는 기존의 일반적인 정책들보다 우수한 성능을 보이지만, 테스트된 작업에서 여전히 90% 미만의 성공률을 기록하여 높은 신뢰성을 제공하지 못하는 한계가 있습니다. 성능을 더욱 개선할 여지가 있습니다.
계산 제한으로 인해 VLA 설계와 관련된 많은 질문들이 충분히 탐구되지 않았습니다. 예를 들어, 기본 VLM의 크기가 VLA 성능에 미치는 영향, 로봇 행동 예측 데이터와 인터넷 규모의 비전-언어 데이터를 함께 훈련하는 것의 실질적인 성능 향상 여부, VLA 모델에 가장 적합한 시각적 특성 등이 있습니다.
OpenVLA 모델과 코드베이스의 공개는 이러한 중요한 질문들을 커뮤니티가 협력하여 탐구할 수 있는 귀중한 기회를 제공할 것으로 기대됩니다.