16. 모방학습과 VLA — 로봇 조작의 큰 흐름
지금 로봇 조작의 중심은 강화학습이 아니다 — 그러나 강화학습이 붙는 자리는 분명히 있다
이 장에서 처음 나오는 말6개
모방학습Imitation Learning · IL- 보상 대신 사람의 시연을 보고 배우는 것. 로봇 조작에서 널리 쓰인다.
원격 조종Teleoperation- 사람이 조종기·리더암으로 로봇을 직접 움직여 시연 데이터를 만드는 것. 데이터 수집의 실체다.
누적 오차Compounding Error- 작은 흉내 오차가 로봇을 시연에 없던 상태로 데려가고, 거기서 오차가 더 커지는 악순환.
액션 청킹Action Chunking- 다음 한 스텝이 아니라 앞으로 여러 스텝을 한 번에 예측하는 것. 흔들림과 누적 오차를 줄인다.
확산 정책Diffusion Policy- 이미지 생성에 쓰는 확산 모델로 행동 시퀀스를 생성하는 정책. 여러 갈래 행동을 한 모델로 표현한다.
VLAVision-Language-Action Model- 이미지와 언어 지시를 받아 로봇 행동을 내놓는 대형 모델. "책을 선반에 꽂아"가 입력이 된다.
왜 조작은 모방학습으로 갔나
섹션 제목: “왜 조작은 모방학습으로 갔나”14장에서 짚은 세 이유를 다시 본다.
| 문제 | 강화학습으로 하면 | 모방학습으로 하면 |
|---|---|---|
| 보상을 쓰기 어렵다 (“잘 정리했다”) | 의도를 촘촘한 식으로 만들기 어렵다 | 시연 행동을 지도 신호로 쓸 수 있다 |
| 접촉 시뮬이 안 맞는다 | 시뮬에서 배운 게 실물에서 깨진다 | 실물에서 직접 데이터를 모은다 |
| 지각이 필요하다 | 픽셀에서 RL은 샘플을 엄청 먹는다 | 지도학습이라 대규모 사전학습을 얹기 쉽다 |
보상 설계가 어려운 자리에서 시연은 강한 지도 신호다. 다만 시연 밖 상태의 정답까지 주는 것은 아니므로 아래의 누적 오차 문제는 남는다. 1장의 판정 한 줄이 그대로 적용된다 — 정답 시범을 보일 수 있으면 모방학습.
행동 복제와 그 한계
섹션 제목: “행동 복제와 그 한계”가장 단순한 형태는 지도학습이다. 관측 → 사람이 한 행동을 맞히면 된다.
데이터 : (이미지, 관절 상태) → (사람이 취한 행동)학습 : 평범한 회귀 손실절차가 단순한 만큼 잘 되지만, 두 개의 구조적 문제가 있다.
시연 궤적 : ─────────────────────────▶ 성공정책 궤적 : ────╲ ╲___ ← 조금 벗어남 ╲____ ╲______ ← 시연에 없던 상태. 뭘 해야 할지 모른다지도학습은 자기가 만든 상태 분포를 못 본다. 조금 벗어나면 그 상태에 대한 정답이 데이터에 없고, 오차가 눈덩이처럼 커진다.
처방 — 실패 근처 데이터를 더 모은다(DAgger 계열: 정책을 굴리다 사람이 개입해 교정 데이터를 추가), 또는 일부러 흔들어 놓고 복귀하는 시연을 섞는다.
컵을 왼쪽으로 돌아가 잡아도 되고 오른쪽으로 돌아가 잡아도 된다. 시연에 둘 다 있으면, 평균을 내는 회귀 모델은 가운데로 가서 부딪힌다.
시연 A: 왼쪽 경로 ←──╮시연 B: 오른쪽 경로 ──→╯평균 : 가운데 ↓↓↓ = 장애물에 충돌처방 — 행동을 하나의 값이 아니라 분포로 생성한다. 확산 정책이나 토큰화 + 자기회귀 생성이 이 문제를 정면으로 푼 것이다.
오늘의 정책 구조
섹션 제목: “오늘의 정책 구조”| 접근 | 아이디어 | 강점 |
|---|---|---|
| 액션 청킹 (ACT류) | 다음 k스텝(예: 50)을 한 번에 예측 | 흔들림·누적 오차 감소. 구현이 단순 |
| 확산 정책 | 행동 시퀀스를 확산 모델로 생성 | 여러 갈래를 자연스럽게 표현 |
| 자기회귀 + 행동 토큰 | 행동을 토큰으로 바꿔 언어 모델처럼 생성 | 언어 모델 사전학습을 그대로 얹는다 |
액션 청킹은 흔들림과 긴 horizon 예측을 줄이는 유용한 선택이지만, 청크 길이·시간 앙상블· 재계획 주기에 따른 지연과 반응성의 trade-off가 있다. 모든 조작 정책의 필수 부품은 아니다.
VLA — 언어를 입력으로 받는 로봇 정책
섹션 제목: “VLA — 언어를 입력으로 받는 로봇 정책”한 과제에 한 정책을 학습하면 과제마다 데이터를 다시 모아야 한다. VLA의 발상은 “여러 로봇·여러 과제의 데이터를 한 모델에 몰아넣고, 무엇을 할지는 언어로 지시받는” 것이다.
| 왜 언어인가 | 효과 |
|---|---|
| 과제를 지정할 수 있다 | 한 모델로 여러 과제 |
| 언어-비전 사전학습이 상식을 준다 | 처음 보는 물체에도 어느 정도 대응 |
| 사람의 지시로 조합이 된다 | “빨간 컵을 먼저” |
지형 — 이 자리를 채우는 것들
섹션 제목: “지형 — 이 자리를 채우는 것들”모델 세대가 반년 단위로 바뀌므로, 이름보다 역할로 기억한다.
| 계열 | 성격 |
|---|---|
| π0 계열 (Physical Intelligence, openpi로 공개) | 여러 로봇 형태의 대규모 데이터로 학습한 범용 조작 모델. π0.5는 약 3.3B 규모에 FAST 액션 토크나이저를 쓴다 |
| GR00T N 시리즈 (NVIDIA) | 휴머노이드 중심의 공개 파운데이션 모델. Isaac 생태계와 붙는다 |
| OpenVLA · SmolVLA 등 오픈 모델 | 공개 가중치로 미세조정해 쓰는 실용 경로. 작은 모델은 온보드 추론에 유리 |
| LeRobot (Hugging Face) | 모델이 아니라 스택 — 데이터셋·정책·실기 제어를 묶는다. v0.6대에서 위 계열들을 공용 부품으로 통합 |
데이터가 병목이다
섹션 제목: “데이터가 병목이다”| 항목 | 현실 |
|---|---|
| 수집 방법 | 원격 조종(리더-팔로워 팔, VR 컨트롤러). 사람이 직접 한다 |
| 한 과제 | 수십~수백 시연. 어려운 과제는 훨씬 더 |
| 품질 | 일관성이 성능을 좌우한다. 조종자가 바뀌면 분포가 바뀐다 |
| 다양성 | 조명·배치·물체를 바꿔 모아야 일반화된다 |
| 비용 | 사람 시간. 이 분야에서 가장 비싼 자원 |
그래서 강화학습은 어디에 붙나
섹션 제목: “그래서 강화학습은 어디에 붙나”모방학습이 주류라고 해서 RL이 밀려난 게 아니다. 붙는 자리가 명확해졌을 뿐이고, 그 자리들이 이 덱의 앞 장들과 정확히 이어진다.
| 자리 | 무엇 | 이 덱의 어디 |
|---|---|---|
| 시뮬 RL → 증류 | 시뮬에서 RL로 잘하는 정책을 만들고, 그 행동을 학생 모델에 옮긴다 | 14장 교사-학생 |
| 성공/실패로 후처리 | 모방으로 만든 정책을 실제로 굴려 성공 판정으로 RL 미세조정 | 6장 · 8장 |
| 잔차 RL | 기존 정책(모방·고전 제어)의 출력에 RL이 보정값만 더한다. 안전하고 표본 효율이 좋다 | 5장 |
| 오프라인 RL로 품질 보정 | 잡다한 품질의 시연에서 잘된 것에 가중치를 준다 | 7장 |
| 보상 모델 · 성공 판정기 | “성공했는가”를 사람 라벨이나 비전 모델로 판정해 보상을 만든다 | 8장 |
| 보행·전신 제어 | 애초에 RL이 주류인 영역 | 14~15장 |
무엇을 배워 둘 것인가
섹션 제목: “무엇을 배워 둘 것인가”| 배울 것 | 왜 |
|---|---|
| 모방학습 기본 (BC · 액션 청킹 · 확산 정책) | 조작 현장의 공통 언어 |
| 데이터 수집·정제 파이프라인 | 실제 병목이고, 실력이 드러난다 |
| VLA 미세조정 (LoRA 등 효율적 미세조정 포함) | 실무 진입점 |
| RL 미세조정 · 잔차 RL | 앞 장들의 지식이 여기서 값을 한다 |
| 온보드 추론 최적화 | 큰 모델을 로봇 위에서 실시간으로 |
참고 자료
섹션 제목: “참고 자료”- Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware — ACT와 액션 청킹
- Diffusion Policy — 확산 모델 기반 다중 모드 행동 시퀀스 생성
- LeRobot Documentation — 정책·데이터셋·로봇 제어의 공개 스택
- LeRobot Releases — 빠르게 변하는 지원 모델과 버전 확인
16장 요약
섹션 제목: “16장 요약”- 조작이 모방학습으로 간 이유는 셋 — 보상을 못 쓰고, 접촉 시뮬이 안 맞고, 지각이 필요하다
- 행동 복제의 구조적 문제는 누적 오차와 여러 갈래 행동의 평균화다
- 처방은 교정 데이터 추가와 행동을 분포로 생성하는 것(확산 정책·토큰 생성)
- 액션 청킹은 유용하지만 청크 길이와 재계획 주기에 따른 반응성 trade-off가 있다
- VLA는 여러 로봇·과제의 데이터를 한 모델에 모으고 언어로 과제를 지정한다
- 모델 이름은 세대가 빨리 바뀌므로 역할로 기억한다 — π0 계열 · GR00T · 오픈 VLA · LeRobot 스택
- 공개 VLA를 그대로 붙이면 대개 안 된다. 우리 로봇 시연으로 미세조정해야 하고, 데이터가 병목이다
- RL이 붙는 자리는 명확하다 — 시뮬 RL 증류 · 성공 판정 기반 후처리 · 잔차 RL · 오프라인 품질 보정
- 한 문장 — 모방학습이 싸게 만들고, 강화학습이 실제로 되게 민다