5.1 모방학습과 행동 복제

5.1.1 demonstration dataset

시연 데이터셋 DD는 관측 oto_t, 행동 ata_t, 필요하면 언어 지시 ll의 시계열로 구성된다.

D={τi}i=1N,τi={(ot,at,li)}t=0Ti−1 D = \{\tau_i\}_{i=1}^{N}, \qquad \tau_i = \{(o_t, a_t, l_i)\}_{t=0}^{T_i-1}

관측은 한 장의 이미지가 아니라 여러 카메라 영상, 현재 관절 상태, 그리퍼 상태를 포함할 수 있다. 행동은 다음 joint position, joint delta, end-effector pose, velocity 중 하나다. action의 의미를 schema와 unit에 명시하지 않으면 같은 shape의 tensor라도 서로 호환되지 않는다.

5.1.2 behavior cloning 목적함수

결정론적 정책이 행동을 직접 회귀한다면 가장 단순한 loss는 다음과 같다.

LBC(θ)=E(o,a)∼D[∥πθ(o)−a∥1] \mathcal{L}_{BC}(\theta) = \mathbb{E}_{(o,a)\sim D} \left[\|\pi_\theta(o)-a\|_1\right]

L1 또는 Smooth L1은 큰 이상치에 대한 민감도가 L2보다 낮다. 하지만 loss가 낮다고 task success가 반드시 높지는 않다. 같은 관측에서 왼쪽과 오른쪽으로 우회하는 두 성공 행동이 존재하면 평균 회귀 결과는 장애물 중앙으로 향할 수 있다. 행동 분포의 다봉성(multimodality)이 중요한 이유다.

5.1.3 covariate shift와 복구 데이터

훈련 데이터의 관측 분포는 사람 정책 πE\pi_E가 만든다. 배포 중 모델 πθ\pi_\theta가 작은 오차를 내면 훈련에서 거의 보지 못한 상태로 이동하고, 그 상태에서 더 큰 오차를 낼 수 있다.

ot∼dπE  (training),ot∼dπθ  (deployment) o_t \sim d_{\pi_E} \;\text{(training)}, \qquad o_t \sim d_{\pi_\theta} \;\text{(deployment)}

대응 방법은 하나가 아니다.

  • 시작 pose, 물체 위치, 조명 변화를 충분히 포함한다.
  • 완벽한 시연뿐 아니라 안전한 복구(recovery) 행동을 수집한다.
  • 실패 직전/실패 상태를 구분해 annotation한다.
  • closed-loop evaluation에서 관측된 실패 분포를 다음 수집 round에 반영한다.
  • 필요하면 DAgger 계열처럼 정책 방문 상태에 expert label을 추가한다.

단, 위험 상태를 의도적으로 만들 때는 로봇 속도·토크 제한과 비상 정지 절차가 우선이다.

이해 도움말 — 왜 한 번의 작은 오차가 계속 커지는가

행동 복제(Behavior Cloning)는 주로 전문가가 만든 “정상 경로”를 본다. 그러나 배포 중 정책이 물체를 몇 mm 빗맞히면 다음 카메라 영상은 훈련 데이터에 드물었던 장면이 된다. 정책은 낯선 장면에서 다시 오차를 내고, 그 결과는 더 낯선 다음 관측을 만든다. 이것이 공변량 이동(covariate shift)의 연쇄다. 따라서 데이터 수집 때는 성공 궤적의 개수만 늘리기보다, 살짝 어긋난 상태에서 정상 경로로 돌아오는 복구(recovery) 예시를 포함하는 것이 중요하다.

이 장의 예제 코드·설정 파일 (5)

이 장의 자가 점검·가상실습