VLA 선행 연구 - 전체 목차6편

논문해석 - BC-Z: Zero-Shot Task Generalization with Robotic Imitation Learning

들어가며

5편 LLaVA까지는 텍스트와 이미지를 다루는 모델이었습니다. 이 모델들의 출력은 문장이고, 틀린 문장을 내도 다음 입력이 달라지지는 않습니다. 로봇 정책은 다릅니다. 정책이 낸 행동이 팔을 움직이고, 움직인 결과가 다음 카메라 이미지가 됩니다. 6편부터는 이렇게 출력이 다음 입력을 바꾸는 로봇 학습 논문을 다룹니다.

BC-Z 는 Google 로봇 팀이 "사람 시연을 흉내 내는 단순한 학습 방법을 크게 키우면, 시연하지 않은 과제까지 수행할 수 있는가"를 실물 로봇으로 확인한 논문입니다. 이름의 BC는 행동 복제(behavior cloning)이고, Z는 제목의 제로샷(Zero-Shot)에서 왔습니다. 로봇 12대로 100개 과제의 시연을 모으고, 과제를 원-핫 번호 대신 언어 문장이나 사람 영상으로 지정하게 해서, 학습 때 없던 과제의 문장을 넣어도 로봇이 그 과제를 시도하게 만들었습니다.

이 과제 설정과 로봇, 데이터 수집 방식은 VLA 계보 1편 RT-1이 그대로 이어받습니다. RT-1 논문에서 BC-Z는 비교 기준선으로 다시 등장합니다.

📄 BC-Z: Zero-Shot Task Generalization with Robotic Imitation Learning — Eric Jang, Alex Irpan, Mohi Khansari, Daniel Kappler, Frederik Ebert, Corey Lynch, Sergey Levine, Chelsea Finn / Robotics at Google·Everyday Robots·UC Berkeley·Stanford University, CoRL 2021

프로젝트 페이지는 sites.google.com/view/bc-z이고, 학습에 쓴 로봇 시연은 kaggle.com/google/bc-z-robot에 공개돼 있습니다. arxiv 식별자는 2202.02005입니다.

초록 요약

카메라 영상으로 조작하는 로봇이 새 과제로 일반화하는 것은 로봇 학습의 오래된 난제입니다. 저자들은 이 문제를 모방 학습(imitation learning)으로 접근하고, 수집 데이터의 규모와 폭을 키우는 것이 일반화에 얼마나 도움이 되는지를 연구합니다. 이를 위해 시연과 사람의 개입(intervention)을 모두 학습에 쓰는 대화형 모방 학습 시스템을 만들었습니다. 이 시스템은 과제를 전달하는 여러 형태의 정보, 곧 사전학습된 자연어 임베딩이나 사람이 과제를 수행하는 영상에 조건화될 수 있습니다. 실물 로봇 데이터 수집을 서로 다른 과제 100개 이상으로 늘리자, 이 시스템은 로봇 시연이 전혀 없는 처음 보는 조작 과제 24개를 평균 성공률 44%로 수행했습니다.

그림 1 — BC-Z 개요

그림 1 — 100개 과제·25,877개 에피소드로 언어 문장이나 사람 영상에 조건화된 7자유도 정책을 학습합니다.

위 그림은 BC-Z 시스템 전체를 보여줍니다. 왼쪽은 VR 컨트롤러로 로봇을 조종해 시연을 모으는 장면이고, 가운데는 사람 영상이나 언어 문장을 과제 임베딩으로 바꿔 정책에 넣는 학습 구조, 오른쪽은 정책이 예측한 앞으로의 궤적을 카메라 이미지 위에 겹쳐 그린 화면입니다.


1. 배경 — 모방 학습과 분포 이동

행동 복제

모방 학습은 전문가의 시연을 보고 같은 행동을 내도록 정책을 학습하는 방법입니다. 가장 단순한 형태가 행동 복제 입니다. 시연 데이터에서 "이 이미지를 봤을 때 전문가가 한 행동"의 짝을 모아, 이미지를 넣으면 그 행동이 나오도록 지도 학습합니다. 이미지 분류에서 사진을 넣고 정답 라벨을 맞히도록 학습하는 것과 같은 구조이고, 라벨 자리에 행동이 들어갑니다.

학습은 간단하지만, 정책을 실제 로봇에서 실행하면 문제가 생깁니다.

분포 이동

학습 데이터에는 전문가가 성공적으로 움직인 궤적만 들어 있습니다. 정책이 실행 중에 전문가와 조금 다르게 움직이면 다음과 같은 일이 순서대로 일어납니다.

  1. 정책이 전문가 궤적에서 약간 벗어난 자세에 도달합니다.
  2. 이 자세의 카메라 이미지는 학습 데이터에 없던 이미지입니다.
  3. 정책은 처음 보는 이미지에서 부정확한 행동을 냅니다.
  4. 궤적이 더 벗어나고, 오차가 쌓이면서 과제에 실패합니다.

학습 때 본 상태의 분포와 실행 때 만나는 상태의 분포가 달라지는 이 현상을 분포 이동(distribution shift) 이라고 부릅니다.

DAgger와 HG-DAgger

DAgger(Dataset Aggregation) 는 분포 이동을 줄이는 대표적인 방법입니다. 학습한 정책을 실제로 실행해 정책이 스스로 도달한 상태를 모으고, 그 상태마다 전문가가 올바른 행동을 라벨로 달아 데이터에 합친 뒤 다시 학습합니다. 정책이 실제로 가는 상태가 학습 데이터에 들어가므로 분포 차이가 줄어듭니다.

로봇 조작에서는 DAgger를 그대로 쓰기 어렵습니다. 로봇을 조종하지 않는 상태에서 전문가가 매 순간 "지금 이렇게 움직였어야 한다"는 행동값을 입력해야 하기 때문입니다.

HG-DAgger(Human-Gated DAgger) 는 자율주행 연구에서 나온 변형입니다. 전문가는 정책이 실수하려 할 때만 개입해 로봇 조종을 넘겨받고, 궤적을 바로잡은 뒤 다시 정책에 넘깁니다. 개입한 구간의 전문가 행동이 새 학습 데이터가 됩니다. 전문가가 하는 일은 평소의 원격조작과 같으므로 인터페이스가 단순합니다. BC-Z는 이 방식을 대규모 로봇 조작 데이터 수집에 적용합니다.


2. 문제 정의 — 과제 명령 조건부 정책

그림 2 — 학습 과제와 처음 보는 과제

그림 2 — 윗줄은 학습 과제 일부, 아래 두 줄은 제로샷 평가용 처음 보는 과제 일부입니다.

목표는 RGB 이미지 sSs \in \mathcal{S} 와 과제 명령 wWw \in \mathcal{W} 를 받아 행동을 내는 조건부 정책 μ:S×WA\mu: \mathcal{S} \times \mathcal{W} \rightarrow \mathcal{A} 입니다. 과제 명령은 언어 문장일 수도 있고 사람이 과제를 수행하는 영상일 수도 있습니다. 행동 공간 A\mathcal{A} 는 말단장치(end-effector)의 6자유도 자세에 평행 집게의 연속 제어 1자유도를 더한 7자유도입니다.

정책은 두 부분으로 나뉩니다.

구성입력 → 출력역할
인코더 q(zw)q(z \mid w)과제 명령 ww → 과제 임베딩 zZz \in \mathcal{Z}문장이나 영상을 벡터로 바꿈
제어층 π\pi이미지와 임베딩 (s,z)(s, z) → 행동 aa벡터가 가리키는 과제를 수행하는 행동을 냄

그림 2의 왼쪽 위 도식이 이 분리를 보여줍니다. 제어층은 과제 임베딩을 받아 행동으로 바꾸는 "행동 복호기" 역할을 합니다.

과제를 원-핫 번호로 주면 학습에 없던 과제는 번호 자체가 없으므로 지정할 방법이 없습니다. 언어 임베딩이나 영상 임베딩은 연속 벡터라서, 새 과제의 문장을 넣으면 학습한 과제들의 임베딩 사이 어딘가에 놓입니다. "사과를 종이컵에 넣어라"라는 새 문장의 임베딩이 "사과를 ~에 넣어라"와 "~를 종이컵에 넣어라"에 가까우면, 제어층이 두 과제에서 배운 행동을 섞어 새 과제를 시도할 수 있습니다.

기존 연구와의 차이

기존 모방 학습 연구도 여러 형태의 일반화를 보였습니다.

일반화 대상조건 정보한계
새 물체 (원샷·제로샷)로봇 시연, 사람 영상과제 자체는 학습과 같음
새 물체 배치·목표 배치목표 이미지, 시연과제 자체는 학습과 같음
새 장면목표 이미지과제 자체는 학습과 같음
새 과제 (BC-Z)언어 문장(제로샷), 사람 영상(퓨샷)목표 이미지 없이, 학습 데이터에서 함께 나온 적 없는 물체 조합

BC-Z가 다루는 과제는 닦기·밀기·집어 놓기처럼 기술이 다양하고, 7자유도를 10 Hz로 제어하며, 한 에피소드에 100번이 넘는 결정을 내려야 합니다.


3. 데이터 수집 — VR 원격조작과 공유 자율

수집 장비

원격조작 시스템은 로봇 탑재 컴퓨터에 USB로 연결한 Oculus VR 헤드셋과 손에 드는 컨트롤러 두 개로 이루어집니다. 조작자는 로봇 뒤에 서서 로봇을 직접 보며 컨트롤러로 조종합니다. 로봇은 조작자의 움직임에 10 Hz 비실시간 제어 루프로 반응합니다. 제어 주기가 빠른 편이라 여러 과제를 쉽게 시연할 수 있고, 자율 실행 중 로봇이 위험한 상태로 가려 할 때 빠르게 개입할 수 있습니다.

조작 입력기능
오른쪽 컨트롤러 (팔)
A녹화 시작, 녹화 중이면 성공으로 표시
B현재 녹화를 실패로 표시하고 멈춘 뒤 로봇을 초기 자세로 복귀
클러치(Clutch)누르고 있는 동안 정책을 무시하고 팔을 수동 조종
트리거(Trigger)집게 연속 닫기. 끝까지 누르면 완전히 닫히고 놓으면 열림
왼쪽 컨트롤러 (베이스)
X시연 녹화를 멈추고 실패로 표시
Y자율 정책 켜기·끄기
조이스틱베이스 전진·회전 속도 제어 (문 열기 과제용)

표 5 — 원격조작 버튼과 조작 방식.

로봇은 수동 모드와 자율 모드를 오갑니다. 수동 모드에서는 조작자가 움직일 때만 로봇이 움직이고, 자율 모드에서는 조작자가 클러치로 넘겨받지 않는 한 학습된 정책을 따릅니다.

환경과 과제

로봇마다 탁자 앞에 가정용 물체 6~15개를 무작위 자세로 놓습니다. 과제는 미리 정한 100개이고, 밀기나 집어 놓기 같은 기반 기술 9가지에 걸쳐 있습니다.

물체 세트는 두 가지입니다.

그림 6(a) — 물체 세트 1

그림 6(a) — 21개 학습 과제에 쓴 물체 세트 1입니다.

그림 6(b) — 물체 세트 2

그림 6(b) — 79개 학습 과제에 쓴 물체 세트 2입니다.

과제 묶음과제 수물체특징
21개 과제 묶음21물체 세트 1집어 놓기부터 "병 세우기"처럼 물체를 특정 방향으로 두는 기술까지 폭이 넓음
79개 과제 묶음79물체 세트 2집어 놓기·표면 닦기·쌓기 위주로 기술 종류는 적지만 물체가 많고 어지러움

같은 물체라도 여러 개체를 썼습니다. 물체 세트 1의 세라믹 그릇은 사진에서 빨간색이지만, 초록색이나 파란색으로 칠한 그릇으로도 데이터를 모았습니다.

공유 자율 데이터 수집

수집은 두 단계입니다. 먼저 사람이 과제를 처음부터 끝까지 시연하는 전문가 전용 단계로 초기 다중 과제 정책을 학습합니다. 그다음 공유 자율(shared autonomy) 모드로 넘어가, 현재 정책이 과제를 시도하고 사람이 감독합니다. 정책이 위험한 상태로 가려 하거나 과제를 끝내지 못할 것 같으면 사람이 클러치를 잡고 잠시 조종을 넘겨받아 바로잡습니다.

다중 과제 조작에서는 전문가 전용 시연 11,108개로 초기 정책을 만들고, 정책 배포를 16회 반복하며 HG-DAgger 시연 14,769개를 더 모아 총 25,877개의 로봇 시연을 얻었습니다.

항목
과제 수100
로봇 시연25,877개 (전문가 전용 11,108 + HG-DAgger 14,769)
로봇 시간125시간
로봇 대수12대
조작자7명
수집 기간5개월
사람 영상18,726개
제어 주기10 Hz, 에피소드당 100회가 넘는 결정

수집할 과제는 에피소드 시작마다 무작위로 뽑습니다. 조작자에게 과제를 고르게 하자 시연하기 쉬운 과제로 쏠렸고, 초기 장면과 시연 과제 사이에 가짜 상관관계가 생겼기 때문입니다. 물체는 가끔만 섞었으므로 한 과제 시연의 끝 상태가 다음 과제 시연의 시작 상태가 되는 경우가 많았습니다.

카메라 시점은 에피소드 동안 고정합니다. 머리를 자동으로 돌려 집게를 화면 중앙에 두면 작업 공간은 넓어지지만 학습이 훨씬 어려워졌습니다. 전문가 행동에 잡음을 넣는 DART 같은 방법도 시도했지만 시연이 불편해져서 쓰지 않았습니다.

개입 빈도를 성능 지표로 사용

성공률이 낮을 때는 로봇 시간을 데이터 수집에 쓰는 것이 낫지만, 수집 과정의 문제를 찾으려면 평가도 필요합니다. 일반화 수준이 높아질수록 평가에 필요한 시행 수도 늘어나므로, 로봇 시간을 평가와 수집에 어떻게 나눌지가 문제가 됩니다.

공유 자율 수집에서는 에피소드당 평균 개입 횟수를 따로 평가하지 않고도 얻을 수 있습니다. 저자들은 이 개입 빈도가 정책 성공률과 음의 상관관계를 보이는 것을 확인했고(9절 그림 5), 수집 중에 실시간 성능 지표로 씁니다.

과제 내부의 변동

그림 7 — 과제 내부의 변동

그림 7 — 같은 과제 안에서도 물체 위치·배경·로봇·물체 개체가 달라지고, 윗줄은 변동을 없앤 시뮬레이션 설정입니다.

수집은 여러 로봇이 1~4곳의 물리적 장소에서 나눠 했으므로, 정책은 로봇 하드웨어·배경·장면 구성의 차이를 모두 다뤄야 합니다. 스펀지는 파란색과 흰색이 있고 모양이 조금씩 다르며, 지우개와 고추도 크기와 재질이 다릅니다. 이런 변동이 있으면 같은 성능에 필요한 데이터 양이 늘어납니다.

저자들은 시뮬레이션으로 이 효과를 확인했습니다. "병을 세라믹 그릇에 넣기" 과제를 시뮬레이션에서 물체 위치를 고정해 초기화하면, 전문가 시연 37개만으로 단일 과제 정책이 97.2% (0.7)의 성공률을 냅니다. 물체 위치를 무작위로 바꾸면 시연 40개로 학습한 단일 과제 행동 복제의 성공률은 56% (2.2)에 그칩니다. 실물에서 단일 과제 정책의 성공률이 낮은 이유가 환경 다양성에 있다는 근거입니다.

사람 영상 수집

사람 영상은 여러 가정과 사무실에서 모았습니다. 환경마다 같은 장면을 차려 놓고 서로 다른 시점의 웹캠 여러 대로 동시에 녹화했고, 시점 하나를 과제의 예시 하나로 셉니다. 사람이 직접 하는 시연은 로봇 원격조작보다 5~7배 빨라서, 영상 수집에 드는 시간은 로봇 데이터보다 훨씬 적었습니다.

데이터 정리 도구

그림 10 — 데이터 열람·재주석 웹 도구

그림 10 — SQL로 에피소드를 검색하고 메타데이터를 웹에서 바로 고치는 데이터 정리 도구입니다.

조작자는 가끔 실패한 시연을 성공으로, 성공한 시연을 실패로 기록했습니다. 저자들은 메타데이터를 SQL로 검색해 시연을 다시 주석하는 웹 도구를 만들어 라벨 오류를 고치고, 로봇 하드웨어가 고장 났거나 팔이 시연 내내 목표 물체를 가린 시연을 표시했습니다.


4. 과제 임베딩 — 언어 문장과 사람 영상

데이터에는 과제 ii 마다 전문가 데이터 (s,a)Dei(s, a) \in \mathcal{D}_e^i, 사람 영상 whDhiw_h \in \mathcal{D}_h^i, 언어 명령 하나 wiw_\ell^i 가 있습니다. 인코더 q(zw)q(z \mid w) 는 언어 명령이나 사람 영상을 받아 과제 임베딩 zz 를 냅니다.

언어 인코더

언어 명령에는 사전학습된 다국어 문장 인코더(multilingual Universal Sentence Encoder)를 그대로 씁니다. 과제 문장마다 512차원 벡터가 나옵니다. 학습 중에는 이 인코더를 고정하고, 추가 학습 없이 과제 조건으로 씁니다.

영상 인코더

사람 영상은 ResNet-18 기반 합성곱 신경망으로 임베딩합니다. 영상 인코더는 사람 영상과 같은 과제의 로봇 시연을 짝지어 종단간(end-to-end)으로 학습합니다. 사람 영상을 임베딩 ziz^i 로 바꾸고, 그 임베딩을 제어층 π(as,zi)\pi(a \mid s, z^i) 에 넣어 행동 복제 손실의 기울기를 정책과 인코더 양쪽에 전달합니다.

이 종단간 학습만으로는 임베딩이 초기 물체 장면에 과적합되고 과제 일반화가 나빴습니다. 그래서 영상 임베딩이 같은 과제의 언어 임베딩을 예측하도록 코사인 거리 손실을 추가합니다.

mintask i(s,a)DeiwhDhiDeilogπ(as,zi)행동 복제+Dcos(zhi,zi)언어 회귀\min \sum_{\text{task } i} \sum_{\substack{(s,a) \sim \mathcal{D}_e^i \\ w_h \sim \mathcal{D}_h^i \cup \mathcal{D}_e^i}} \underbrace{-\log \pi(a \mid s, z^i)}_{\text{행동 복제}} + \underbrace{D_{\cos}(z_h^i, z_\ell^i)}_{\text{언어 회귀}}

여기서 zhiq(wh)z_h^i \sim q(\cdot \mid w_h) 는 영상 인코더 출력이고 ziq(wi)z_\ell^i \sim q(\cdot \mid w_\ell^i) 는 언어 인코더 출력이며, Dcos(v1,v2)=1v1v2D_{\cos}(v_1, v_2) = 1 - v_1 \cdot v_2 는 코사인 거리입니다. 로봇 시연도 과제를 수행하는 영상이므로, 로봇 영상의 임베딩도 같은 언어 벡터에 맞추도록 학습합니다.

그림 8(a) — 사람 시연 영상

그림 8(b) — 증강한 사람 시연 영상

그림 8 — 사람 시연 영상(위)에 무작위 왜곡과 반전을 적용(아래)한 뒤 과제의 언어 특징에 맞추도록 학습합니다.

영상 전처리와 구조

항목
학습 시 프레임 수무작위로 20프레임을 뽑되 첫 프레임과 마지막 프레임은 유지
추론 시 프레임 수일정한 간격으로 20프레임, 증강 없음
증강정책 학습과 같은 이미지 증강 + x축·y축 무작위 반전. 영상 하나에 한 번 뽑아 20프레임에 똑같이 적용
프레임 배치20프레임을 4 × 5 격자 한 장으로 붙여 2D ResNet-18에 입력
출력층평균 풀링 → 32유닛 완전연결층(ReLU) → 512유닛 선형층 → L2 정규화
학습V100 GPU 18장, GPU당 배치 28쌍(영상 56개), 비동기 경사하강, 학습률 2.45e-4

프레임을 격자 한 장으로 붙이면 2D 합성곱이 여러 층에 걸쳐 시간 방향으로도 특징을 섞으므로, 새 구조를 설계하지 않고도 시간 정보를 처리할 수 있습니다. 앞서 시도한 시간 합성곱 구조보다 메모리를 적게 쓰고 성능도 나았습니다. 중간의 32유닛 층은 임베딩의 표현력을 일부러 제한하는 역할입니다.

배치는 과제를 먼저 복원 추출로 뽑고, 과제마다 사람 영상 1개와 로봇 시연 1개를 뽑아 구성합니다. 새 과제를 평가할 때는 그 과제의 새 사람 영상 10개를 임베딩해 평균을 씁니다. 영상 임베딩 여러 개를 평균하면 정책 성능이 더 좋았습니다.

영상 인코더의 배치 구성 제거 실험

과제 단위로 배치를 뽑으면 모든 과제가 같은 빈도로 나오고 배치의 절반은 항상 사람 영상, 절반은 로봇 영상이 됩니다. 저자들은 행동 복제 손실을 빼고 언어 회귀 손실만 남긴 채 배치 구성만 바꿔 비교했습니다. 정확도는 학습 과제의 따로 떼어 둔 영상에서, 영상 임베딩이 100개 학습 과제의 언어 임베딩 가운데 정답 과제의 것과 가장 가까운지로 잽니다.

영상 인코더 배치 구성영상 정확도
기준 (과제 28개를 뽑고 과제마다 사람 영상 1개 + 로봇 영상 1개)84%
사람 영상 28개 + 로봇 영상 28개80%
전체 데이터에서 영상 56개74%

표 6 — 영상 인코더 배치 구성 제거 실험.

과제 단위 추출이 과제와 모달리티를 함께 균형 있게 맞추기 때문이라고 저자들은 봅니다. ResNet-18에는 배치 정규화가 있으므로 배치 구성이 배치 정규화에 좋은 영향을 줬을 가능성도 언급합니다.

임베딩 시각화

그림 9(a) — 대조 학습 기준선

그림 9(a) — 대조 학습만 쓴 영상 인코더의 과제 간 코사인 유사도 행렬입니다.

그림 9(b) — 언어 보조 손실

그림 9(b) — 언어 회귀 보조 손실을 더한 영상 인코더의 과제 간 코사인 유사도 행렬입니다.

위 그림은 과제별 사람 영상 임베딩 평균끼리의 코사인 유사도를 보여줍니다. 행과 열의 앞쪽 21개가 21개 과제 묶음이고, 나머지는 알파벳순이라 같은 동사로 시작하는 과제가 붙어 있습니다.

처음에는 Task-Embedded Control Networks와 비슷하게 영상끼리의 대조 손실(코사인 유사도나 InfoNCE)을 행동 복제 손실과 함께 썼습니다. 그러자 임베딩이 21개 과제 묶음과 79개 과제 묶음, 두 무리로만 나뉘었습니다(그림 9(a)). 두 묶음이 서로 다른 물체 세트를 쓰므로, 비지도 목표가 수행한 과제보다 화면에 보이는 물체 세트를 먼저 구분하도록 학습한 것으로 저자들은 해석합니다. 언어 회귀 손실을 더하자 임베딩이 과제의 의미에 따라 정렬됐습니다(그림 9(b)).


5. 정책 — FiLM 조건화 ResNet-18과 행동 표현

그림 3 — BC-Z 네트워크 구조

그림 3 — 머리 카메라 이미지를 ResNet-18에 넣고, FiLM 층으로 과제 임베딩을 조건화한 뒤 행동 헤드 세 개로 행동을 예측합니다.

네트워크

정책은 카메라 이미지를 ResNet-18로 처리하고, 마지막 평균 풀링 층에서 여러 행동 헤드(action head) 로 갈라집니다. 헤드마다 크기 256인 은닉층 2개와 ReLU 활성화를 갖춘 다층 퍼셉트론이고, 각각 말단장치 행동의 일부인 XYZ 변위, 축-각(axis-angle) 회전 변위, 정규화한 집게 각도를 예측합니다.

과제 임베딩은 FiLM(Feature-wise Linear Modulation) 층으로 들어갑니다. 512차원 임베딩을 선형 투영해 ResNet 블록 4개의 채널마다 곱할 값과 더할 값을 만들고, 그 값으로 특징 지도를 채널별로 조절합니다. 같은 이미지라도 과제 임베딩이 다르면 다른 특징이 강조되는 구조입니다. RT-1도 같은 방식으로 언어 지시를 이미지 특징 추출 단계에 넣습니다.

손실과 학습 설정

항목
정책 형태결정론적 정책 (가우시안 정책 대신)
XYZ·축-각 손실Huber 손실 (δ\delta=1.0), 가중치 각각 100, 10
집게 각도 손실로그 손실 (0~1), 가중치 0.5
과제 임베딩 잡음N(0,0.1)\mathcal{N}(0, 0.1)
이미지 증강무작위 자르기, 해상도 축소, 표준 광도 증강
옵티마이저Adam (TensorFlow 기본 모멘텀 값)
다중 과제 학습TPUv3 포드, 배치 4096, 학습률 5e-3
구현Tensor2Robot의 FiLM 조건화 ResNet 구현

손실 가중치는 행동의 세 부분이 비슷한 크기의 손실을 갖도록 맞춘 값입니다. 과제 임베딩에 잡음을 넣은 것은 모델이 카메라 이미지의 가짜 상관관계 대신 과제 임베딩을 보고 행동을 고르게 하는 데 결정적이었다고 저자들은 적습니다.

열린 루프 보조 예측

정책은 지금 낼 행동과 함께, 열린 루프(open-loop)로 움직인다면 이어서 낼 다음 행동 10개의 궤적도 예측합니다. 실행할 때는 닫힌 루프로 동작하며 현재 이미지에서 예측한 첫 행동만 씁니다. 추가 예측은 학습의 보조 목표가 되고, 오프라인에서 정책의 계획을 눈으로 확인하는 수단도 됩니다. 그림 1 오른쪽의 궤적이 이 예측입니다.

상태 차이를 행동으로 사용

일반적인 모방 학습 구현은 시연 때 실제로 보낸 행동을 그대로 라벨로 씁니다. 10 Hz 시연의 행동을 그대로 따라 하게 하자 정책이 아주 작은 행동만 내고 제자리에서 떨리는 동작을 보였습니다.

BC-Z는 행동을 NN 걸음 뒤 목표 자세와의 상태 차이 로 정의하고, NN 을 상태마다 적응적으로 고릅니다.

  1. N=1N=1 로 시작합니다.
  2. NN 번째 미래 상태의 집게 값 변화가 0.01을 넘거나 팔 관절 변화량의 L2 노름이 0.05를 넘을 때까지 NN 을 1씩 늘립니다.
  3. 말단장치와 집게가 모두 움직이지 않는 라벨은 버립니다.

NN 이 크면 행동 크기가 커져 학습은 쉬워지지만 궤적에 치우침이 생기고, 이 치우침은 집게를 열고 닫는 순간에 가장 문제가 됐습니다. 적응적 NN 은 도구를 작업 공간 너머로 옮길 때는 팔을 빠르게 하고, 물체에 닿거나 떨어지기 직전에는 느리게 합니다.


6. 단일 과제 검증 — 통 비우기와 문 열기

다중 과제로 넘어가기 전에, 같은 구조가 개별 과제를 학습할 수 있는지부터 확인합니다.

그림 11 — 통 비우기와 문 열기 환경

그림 11 — 단일 과제 검증에 쓴 통 비우기 환경과 문 열기 환경입니다.

과제내용데이터
통 비우기통에서 물체를 집어 옆 통에 떨어뜨림시연 2,759개
문 열기충돌 없이 문을 밀어 엶. 팔 대신 베이스의 전진·회전 속도를 예측실물 회의실 24곳 시연 12,000개 + 시뮬레이션 회의실 5곳 시연 36,000개
통 비우기분당 집은 물체 수시행 수
사람 전문가6.3 (2.1)2759
BC-Z (시연 2759개)3.4 (1.2)9
문 열기성공률시행 수
BC-Z (학습한 문 24개)87% (2.2)480
BC-Z (따로 떼어 둔 문 4개)94% (2.7)80

표 1 — 단일 과제 통 비우기와 문 열기 성능, 괄호는 표준편차입니다.

통 비우기에서 BC-Z는 분당 3.4개를 집어 원격조작하는 사람 속도의 절반을 넘습니다. 논문의 그림 12는 학습 데이터 양에 따른 120초당 집은 물체 수 그래프로, 전문가 시연 30시간으로 학습한 정책이 분당 3~4개를 치웁니다. 사람 조작자는 과제 시연 한 번에 약 43초가 걸립니다.

통 비우기는 물체를 어떤 순서로 집어도 되므로 정답 행동이 여러 개인 과제입니다. BC-Z는 결정론적 단봉 정책이라 원칙적으로 이런 과제에 약해야 하는데도 과제를 해냈습니다. 저자들은 데이터의 잡음과 다양성 덕분에 모델이 가장 가까운 물체로 가거나 배경의 가짜 상관관계를 이용해 한 물체를 골랐을 것이라고 추정합니다.

문 열기는 실물 회의실 24곳(오른쪽으로 열리는 문 10개, 왼쪽 14개)과 시뮬레이션 회의실 5곳(오른쪽 3개, 왼쪽 2개)에서 시연을 모았습니다. 실물 시연은 조작자 13명이 로봇 30대로 모았고, 시뮬레이션 시연도 같은 인터페이스로 모니터 위의 가상 로봇과 문을 조종해 모았습니다. 에피소드마다 초기 팔 자세와 문에 대한 로봇 자세를 무작위로 바꿨고, 정책은 언제 멈출지를 정하는 이진 종료 행동도 로그 손실로 예측합니다. 문 열기와 통 비우기에는 과제 명령이 없으므로 FiLM 층을 넣지 않았습니다. 학습은 GPU 10장의 비동기 SGD, 작업자당 배치 32, 학습률 2.5e-4입니다.

그림 13 — RetinaGAN 적용 예시

그림 13 — 시뮬레이션 이미지(왼쪽)를 RetinaGAN으로 실물처럼 바꾼 이미지(오른쪽)입니다.

필요한 실물 시연 수를 줄이려고 시뮬레이션→실물 전이를 씁니다. 두 영역 사이 물체 검출 결과가 일치하도록 비지도로 학습한 RetinaGAN이 시뮬레이션 이미지를 실물처럼 바꾸고, 최종 정책은 시뮬레이션·실물·실물처럼 바꾼 시뮬레이션 세 데이터셋을 섞어 학습합니다.

평가는 따로 떼어 둔 회의실 4곳(오른쪽 2개, 왼쪽 2개)에서 합니다. 조작자가 표시된 위치에 로봇을 두면 로봇이 그 위치에서 25 × 25 cm 영역 안의 무작위 자세로 이동한 뒤 정책이 조종을 넘겨받습니다. 로봇이 들어갈 만큼 문이 열리고, 정책이 종료할 때 로봇이 문을 포함한 환경에 닿아 있지 않으면 성공입니다. 베이스나 팔(집게 제외)이 환경에 부딪히면 실패로 기록합니다.


7. 새 과제 일반화 — 언어 제로샷과 영상 퓨샷

그림 4 — 처음 보는 과제 수행 예시

그림 4 — BC-Z가 처음 보는 과제를 성공적으로 수행하는 장면입니다.

평가 설정

처음 보는 과제는 학습 데이터에 시연이 하나도 없습니다. 언어 조건 정책에는 새 문장을, 영상 조건 정책에는 새 과제의 사람 영상 몇 개의 임베딩 평균을 줍니다.

처음 보는 과제개수난도
79개 과제 묶음의 물체만 사용4물체 세트를 넘나드는 일반화가 필요 없어 상대적으로 쉬움
21개 과제 묶음과 79개 과제 묶음의 물체를 섞음24학습에서 함께 나온 적 없는 물체 조합

본문 4절과 6.2절은 처음 보는 과제를 29개(4개 + 25개)라고 적었지만, 결과를 담은 표 2에 실린 과제는 28개(4개 + 24개)이고 표 3과 그림 6의 캡션도 28개(4개 + 24개)라서 여기서는 28개로 적었습니다.

앞의 4개 과제도 쉽지는 않습니다. 이 과제들의 시연 300개 이상을 DAgger 개입과 함께 모아 단일 과제 정책을 학습하면 성공률이 0%입니다. 저자들은 과제마다 기술이 대응해야 하는 위치·물체·방해물의 범위가 넓고, 학습 데이터 자체에도 그런 변동이 크기 때문이라고 봅니다.

결과

기술처음 보는 과제언어 조건 (방해물 1개)언어 조건 (방해물 4–5개)영상 조건 (방해물 4–5개)
집어 놓기'place sponge in tray'83% (6.8)82% (9.2)22% (2.2)
'place grapes in red bowl'87% (6.2)75% (10.8)12% (7.8)
'place apple in paper cup'30% (8.4)33% (12.2)14% (7.8)
집어 닦기'wipe tray with sponge'40% (8.9)0% (0)28% (10.6)
집어 놓기'place banana in ceramic bowl'50% (15.8)75% (9.7)7.5% (4.2)
'place bottle in red bowl'50% (15.8)75% (9.7)0% (0)
'place grapes in ceramic bowl'70% (14.5)70% (10.3)0% (0)
'place bottle in table surface'0%50% (11.2)5% (3.5)
'place white sponge in purple bowl'70% (14.9)45% (11.2)0% (0)
'place white sponge in tray'50% (15.8)40% (11.0)0% (0)
'place apple in ceramic bowl'30% (14.5)20% (8.9)0% (0)
'place bottle in purple bowl'30% (14.5)20% (8.9)0% (0)
'place banana in ceramic cup'10% (9.5)0% (0)0% (0)
'place banana on white sponge'40% (15.5)0% (0)0% (0)
'place metal cup in red bowl'0% (0)0% (0)0% (0)
집기'pick up grapes'70% (14.5)65% (10.7)0% (0)
'pick up apple'20% (12.7)55% (11.2)5% (3.5)
'pick up towel'50% (15.8)42.8% (18.7)0% (0)
'pick up pepper'50% (15.8)35% (10.7)12.5% (5.2)
'pick up bottle'40% (15.5)30% (10.3)17.5% (6.0)
'pick up the red bowl'30% (14.5)0% (0)0% (0)
집어 끌기'drag grapes across the table'0% (0)14% (13.2)0% (0)
집어 닦기'wipe table surface with banana'0% (0)10% (6.7)0% (0)
'wipe tray with white sponge'20% (12.7)0% (0)0% (0)
'wipe ceramic bowl with brush'10% (9.49)0% (0)0% (0)
밀기'push purple bowl across the table'50% (15.8)30% (10.3)0% (0)
'push tray across the table'30% (14.5)25% (9.7)0% (0)
'push red bowl across the table'60% (15.5)0% (0)0% (0)
처음 보는 과제 전체38%32%4%

표 2 — 학습 데이터에 없는 과제의 제로샷(언어)·퓨샷(영상) 성공률, 앞의 4개 과제는 79개 과제 묶음의 물체만 씁니다. 괄호는 표준편차입니다.

언어 조건 BC-Z는 두 종류의 처음 보는 과제 모두에 제로샷으로 일반화합니다. 방해물이 4–5개일 때 전체 평균은 32%이고, 방해물이 1개일 때는 38%로 조금 높습니다.

본문은 이 결과를 "평균 32%, 24개 과제에서 0이 아닌 성공률, 그 24개의 평균 44%"로 요약하는데, 세 숫자가 서로 다른 열에서 나왔습니다. 표 2로 세면 0이 아닌 과제는 방해물 1개 열에서 24개(평균 44.6%), 방해물 4–5개 열에서 20개(평균 44.6%)입니다. 초록의 "처음 보는 과제 24개, 평균 44%"는 방해물 1개 열의 값과 일치하고, 평균 32%는 방해물 4–5개 열의 값입니다.

영상 조건은 일반화가 훨씬 어렵습니다. 전체 평균은 4%이지만 9개 과제에서 0이 아닌 성공률을 보였고, 특히 물체 세트를 섞지 않는 앞의 4개 과제에서 12~28%가 나왔습니다.

정성적으로 보면 언어 조건 정책은 대체로 올바른 물체 쪽으로 움직입니다. 과제 임베딩이 올바른 과제를 가리키고 있다는 뜻입니다. 가장 흔한 실패는 저자들이 "마지막 1센티미터(last-centimeter)" 오류라고 부르는 것으로, 집게를 닫지 못하거나 물체를 놓지 못하거나 물체를 놓을 때 목표를 조금 빗나가는 경우입니다.


8. 성능 제한 요인 — 인코더와 제어층

처음 보는 과제의 성능이 인코더 q(zw)q(z \mid w) 의 일반화에 막히는지, 제어층 π(as,z)\pi(a \mid s, z) 에 막히는지를 가리려고, 학습 과제에서 조건만 세 가지로 바꿔 성공률을 쟀습니다. 원-핫 과제 번호, 학습 과제 문장의 언어 임베딩, 학습 과제를 담은 따로 떼어 둔 사람 영상의 임베딩입니다.

설정과제 조건성공률
학습 과제원-핫42%
언어40%
영상24%
처음 보는 과제언어32%
영상4%

표 3 — 학습 과제 21개와 처음 보는 과제 28개에서 평균한 성공률입니다.

학습 과제에서 원-핫(42%)과 언어(40%)의 성능이 비슷하므로, 언어 임베딩 공간은 과제를 구분하기에 충분합니다. 따라서 언어 조건 정책이 처음 보는 과제에서 받는 제한은 임베딩보다 제어층 쪽이 더 크다고 저자들은 결론짓습니다. 영상 조건은 학습 과제에서도 24%로 크게 떨어지므로, 영상에서 과제를 알아내는 일 자체가 훨씬 어렵습니다.

아래 표는 21개 과제 묶음의 과제별 결과입니다. 과제는 시연 한 번에 관측한 상태 수인 평균 "시연 길이" 순이고, 시연 길이는 난도의 추정치입니다. 과제 이름의 † 표시는 9절 추가 제거 실험에 쓴 8개 과제입니다.

21개 과제 묶음의 과제시연 길이원-핫언어영상
'knock the eraser over'54 (20)65% (7.0)91% (8.7)40% (21.9)
'knock the bottle over'61 (22)58% (7.4)71% (12.1)83% (15.2)
'pick up the ceramic cup' †65 (25)67% (4.7)56% (7.2)83% (15.2)
'pick up the ceramic bowl'73 (32)65% (7.3)77% (11.7)35% (12.8)
'push the ceramic bowl across the table'89 (42)67% (8.2)58% (14.2)50% (35.4)
'place the pepper in the ceramic bowl'98 (30)33% (6.5)39% (11.5)12.5% (11.7)
'place the ceramic cup in the ceramic bowl'103 (26)22% (6.5)33% (13.6)66% (27.2)
'place the white sponge in the ceramic bowl' †106 (32)43% (5.1)38% (6.7)14% (13.2)
'place the bottle in the ceramic bowl' †110 (32)45% (5.3)52% (6.3)43% (18.7)
'drag the pepper across the table' †115 (43)55% (5.0)33% (8.2)20% (12.6)
'push the eraser across the table' †117 (50)71% (4.7)45% (7.9)0% (0)
'place the eraser on the white sponge' †121 (37)33% (4.9)30% (7.2)25% (15.3)
'place the pepper on the white sponge'123 (44)36% (7.1)83% (10.8)0% (0)
'place the pepper in the ceramic cup' †128 (44)30% (4.6)49% (7.6)0% (0)
'place the ceramic cup over the eraser'130 (38)9% (5.0)0% (0)0% (0)
'place the white sponge in the ceramic cup'131 (38)21% (6.9)25% (10.8)14% (13.2)
'place the eraser in the ceramic cup' †135 (43)37% (4.8)33% (7.5)20% (17.9)
'move the arm in a circular motion'144 (69)69% (6.7)12% (6.8)0% (0)
'drag the ceramic bowl in a circle'164 (65)32% (6.8)0% (0)0% (0)
'wipe the white sponge on the table'177 (59)29% (7.8)18% (9.2)0% (0)
'stand the bottle upright'186 (55)5% (3.5)0% (0)0% (0)
전체11542%40%24%

표 7 — 21개 학습 과제에서 원-핫·언어·영상 조건 비교, 영상 정책은 학습 과제의 따로 떼어 둔 영상으로 조건화했습니다.

시연이 길어질수록 세 조건 모두 성공률이 대체로 떨어집니다. "팔을 원 모양으로 움직이기"는 원-핫 69%인데 언어 12%, 영상 0%로, 물체와 무관한 동작은 언어나 영상 임베딩으로 과제를 구분하기 어려운 것으로 보입니다. 79개 과제 묶음의 학습 과제 문장은 부록 표 8에 따로 실려 있고, 'wipe purple bowl with sponge'나 'place fork in paper cup', 'stack cups into tray'처럼 닦기·집어 놓기·쌓기 과제로 이루어져 있습니다.


9. 제거 실험 — 다중 과제 학습, 적응적 상태 차이, HG-DAgger

다중 과제 학습과 적응적 상태 차이

첫 제거 실험은 시연이 1000개로 가장 많은 "병을 세라믹 그릇에 넣기" 과제에서 합니다.

방법1개 과제 성공률
다중 과제, 언어 조건52% (6.3)
다중 과제, 원-핫 조건45% (5.3)
단일 과제 기준선 (시연 1000개)5% (2.8)
다중 과제, 원-핫, 적응적 상태 차이 없음3% (2.3)

표 4(왼쪽) — "병을 세라믹 그릇에 넣기"에서 다중 과제 모델과 단일 과제 모델 비교입니다.

그 과제의 시연 1000개만으로 학습한 단일 과제 정책은 5%에 그칩니다. 여러 로봇과 조작자에 걸쳐 모은 데이터라 과제 하나만 배우기 어렵고, 모든 과제의 시연 25,877개를 함께 학습해야 과제를 풀었습니다. 적응적 상태 차이를 빼고 N=1N=1 로 행동 라벨을 계산하면 3%입니다. 정책이 잡음까지 따라 배우고 너무 느리게 움직여, 좋은 궤적에서 점점 벗어났습니다.

HG-DAgger

총 데이터 양을 같게 두고, 전문가 시연만 쓴 데이터와 전문가 시연 50% + HG-DAgger 개입 50% 데이터로 각각 학습해 비교합니다. 평가 시간을 줄이려고 21개 과제 묶음 중 8개 과제(표 7의 † 표시)에서 평가했습니다.

데이터셋1개 과제8개 과제
100% 전문가 시연27% (5.2)23% (4.2)
50% 전문가 시연 + 50% HG-DAgger53% (5.8)47% (5.2)

표 4(오른쪽) — 같은 데이터 양에서 HG-DAgger 데이터를 섞은 효과입니다.

같은 양의 데이터에서 HG-DAgger 개입 데이터를 절반 섞으면 두 설정 모두 성공률이 두 배 가까이 오릅니다.

그림 5 — 개입 횟수와 성공률

그림 5 — HG-DAgger 수집 중 평가한 정책마다 평균 개입 횟수와 과제 성공률을 찍은 그래프입니다.

위 그림의 점 하나는 HG-DAgger 수집 중에 평가한 정책 하나입니다. 성공률은 개입 없이 성공한 에피소드의 비율로 잽니다. 평균 개입 횟수가 많을수록 성공률이 낮은 뚜렷한 상관관계가 보이므로, 개발 과정에서 개입 빈도를 성능 지표로 쓸 수 있습니다.

영상 임베딩 방법 비교

같은 HG-DAgger 데이터로 영상 임베딩 방법 두 가지를 더 비교했습니다. 하나는 대규모 교육용 영상으로 사전학습한 영상 임베딩이고, 다른 하나는 종단간 정책 목표와 영상 간 대조 손실로 학습하고 언어는 쓰지 않는 TecNets입니다. TecNets는 임베딩을 학습한 뒤 고정하고 그 위에 정책을 다시 학습했습니다.

과제영상 조건 BC-ZBC-Z, 사전학습 영상 임베딩BC-Z, TecNet 임베딩
'place sponge in tray'22% (2.2)10% (6.7)0% (0)
'place grapes in red bowl'12% (7.8)30% (10.2)20% (8.9)
'place apple in paper cup'14% (7.8)0% (0)25% (9.7)
'wipe tray with sponge'28% (10.6)15% (8.0)15% (8.0)
'place banana in ceramic bowl'7.5% (4.2)0% (0)0% (0)
'pick up bottle'17.5% (6.0)10% (6.7)0% (0)
'push purple bowl across the table'0% (0)0% (0)0% (0)
평균 (처음 보는 과제)14.4%9.3%8.6%

표 9 — 선택한 처음 보는 과제에서 영상 임베딩 방법 비교입니다.

사전학습 영상 임베딩도 일부 일반화하지만 BC-Z가 학습한 영상 임베딩보다 낮습니다. 시각화해 보면 사전학습 임베딩은 과제가 달라도 서로 비슷했고, 저자들은 이 모델이 수행한 행동보다 배경 장면을 기준으로 영상을 묶는다고 봅니다. TecNets는 물체 세트를 섞지 않는 앞의 4개 과제에서는 영상 조건 BC-Z와 비슷하지만, 물체 세트를 섞는 3개 과제에서 더 낮습니다. 랜덤 시드만 다른 두 학습 중 하나에서 임베딩이 붕괴했으며, 표에는 붕괴하지 않은 쪽의 결과를 실었습니다.


10. 효과가 없었던 시도

부록 L에는 연구 중에 한두 번 시도했다가 성능이 오르지 않아 접은 방법이 실려 있습니다. 저자들은 구현 오류나 다른 병목, 조절값 문제일 가능성도 있다고 밝히며 관찰 결과를 그대로 적었습니다.

시도결과
상태에 따라 σ\sigma 를 학습하는 확률적 정책도움이 안 되고 학습이 덜 안정적. Huber 손실(δ\delta=1.0)은 예측이 거의 항상 (−1, 1) 안에 있어 사실상 평균제곱오차이고, 이는 σ\sigma 가 고정된 단봉 가우시안 최대가능도와 같음
가우시안 10개 혼합 밀도 네트워크성능 향상 없음
ResNet-34 이상의 큰 구조성능 향상 없음
XYZ 예측을 방향과 크기로 분리XYZ 직접 예측보다 낫지 않았고, 이후 적응적 상태 차이 알고리즘으로 이어짐
정책·영상 인코더의 공간 소프트맥스 층해석은 쉬웠지만 제거했을 때 성능이 올라감
고유수용 감각 정보와 이전 로봇 자세를 입력에 추가성능 향상 없음. 그 정보와 전문가 행동 사이의 인과 혼동 가능성
영상 프레임 40장 (20장 대신)성능 향상 없이 학습만 느려짐
로봇 과제와 무관한 사람 영상을 대조 손실의 음성 예시로 사용음성 예시가 너무 쉽게 멀리 임베딩돼 도움이 안 됨
ILSVRC2012 분류 데이터로 ResNet 사전학습성능 향상 없음
회전 표현절대 축-각, 절대 쿼터니언, 델타 쿼터니언보다 델타 축-각이 조작 과제에서 나음
열린 루프 궤적 2~10번째 예측의 기울기 차단결론이 뚜렷하지 않았지만 대체로 도움이 안 됨
이미지와 로봇 자세에 mixup 정규화도움이 안 됨. 연속 출력과 잘 맞지 않았을 가능성
집게의 절대 각도 대신 잔차 예측효과 없음

검증 오차와 과제 성공률의 관계도 적었습니다. 미래 자세 예측의 검증 오차는 성공률과 상관관계가 있지만, 검증 오차가 비슷한 모델끼리도 성공률이 크게 달랐습니다. 접촉 직전 같은 특정 상태에서는 정확도가 결정적이고 다른 상태에서는 오차가 허용되기 때문으로 보이며, 이 때문에 평가할 체크포인트를 고르기가 어려웠습니다.


11. 저자가 밝힌 한계

첫째, 처음 보는 과제의 성능 편차가 큽니다. 다만 성공률이 낮은 과제에서도 로봇은 올바른 물체로 손을 뻗거나 의미상 관련된 동작을 하는 등 과제의 일부는 이해한 모습을 자주 보입니다. 저자들은 이 정책을 후속 과제의 초기값으로 쓰고 자율 강화 학습 같은 추가 학습으로 성능을 높이는 방향을 제안합니다.

둘째, 언어 명령이 "(동사) (명사)"라는 단순한 구조입니다. 사람이 단 다양한 주석으로 데이터를 다시 라벨링하면 더 다양한 문장 구조를 다룰 수 있을 것이라고 봅니다.

셋째, 영상 조건 정책의 성능이 낮습니다. 영상 기반 과제 표현의 일반화와 모방 학습 알고리즘 자체의 개선이 필요하며, 저수준 제어 오류도 큰 병목입니다.


12. 정리 — VLA 선행 연구에서의 위치

BC-Z는 복잡한 새 알고리즘 없이, 단순한 행동 복제를 데이터 수집 시스템과 함께 키우면 로봇 시연이 없는 과제로 일반화할 수 있다는 것을 실물 로봇 100개 과제로 보였습니다.

  • 과제를 언어 임베딩으로 지정 하면 새 문장만으로 새 과제를 시도할 수 있고, 고정된 사전학습 문장 인코더로 충분했습니다.
  • HG-DAgger 공유 자율 수집 이 같은 데이터 양에서 성공률을 두 배 가까이 올리고, 개입 빈도가 실시간 성능 지표가 됩니다.
  • 다중 과제 학습 이 단일 과제 학습보다 크게 나았고(52% 대 5%), 학습 과제 100개로 새 과제 일반화가 시작됐습니다.
  • 처음 보는 과제의 성능은 임베딩보다 제어층에 더 제한 됐고, 실패는 대부분 집게를 닫고 놓는 마지막 동작에서 났습니다.

VLA와의 연결

RT-1은 BC-Z의 문제 설정을 거의 그대로 이어받고, 제어층을 Transformer로 바꾸고 데이터를 늘렸습니다.

항목BC-ZRT-1
로봇7자유도 팔과 이동 베이스를 갖춘 조작기 (논문에 기종 이름은 없음)Everyday Robots 이동형 조작기
데이터 수집VR 원격조작, 로봇 12대, 25,877개 시연VR 원격조작, 로봇 13대, 약 130k 시연
과제 수100700개 이상
언어 조건Universal Sentence Encoder 임베딩 + FiLMUniversal Sentence Encoder 임베딩 + FiLM
이미지 처리ResNet-18, 현재 이미지 한 장FiLM EfficientNet-B3 + TokenLearner, 이미지 6장
정책과거를 보지 않는 피드포워드 네트워크Transformer
행동 출력연속값 회귀 (Huber·로그 손실)차원별 256구간 이산 토큰

RT-1 논문은 BC-Z를 RT-1과 같은 데이터로 다시 학습해 기준선으로 씁니다. 그 비교에서 BC-Z는 학습한 작업 72%, 처음 보는 작업 19%, 방해물 47%, 배경 41%를 기록했고, RT-1은 각각 97%, 76%, 83%, 59%였습니다. 같은 데이터에서 차이가 난 원인으로 RT-1은 Transformer의 용량, 이산 행동 토큰, 이미지 이력을 제거 실험으로 확인합니다.

BC-Z가 남긴 방식, 곧 언어 명령을 받아 카메라 이미지에서 로봇 행동을 직접 내는 정책을 시연 데이터로 학습하는 방식은 RT-1과 RT-2를 거쳐 VLA의 기본 문제 설정이 됩니다.

전체 목록은 VLA 선행 연구 목차에서 볼 수 있습니다.