Open Source Robotics

고품질 오픈소스 로봇 프로젝트, 도구 및 소프트웨어의 엄선된 컬렉션.

Offline Reinforcement Learning

  • 다른 이름: batch reinforcement learning, batch RL, offline RL
  • 카테고리: Learning & autonomy › RL & simulation
  • 태그: reinforcement-learning, offline-learning, datasets, distribution-shift, robot-learning

미리 수집해 둔 고정된 전이 데이터셋으로부터 학습하며, 학습 중에는 환경과 더 이상 상호작용하지 않는 강화 학습.

정의

오프라인 강화 학습(offline reinforcement learning)은 사람, 스크립트 제어기, 또는 이전 정책이 미리 수집한 상태, 행동, 보상, 다음 상태의 정적 데이터셋만으로 정책을 학습한다. 표준적인 온라인 RL과 달리, 에이전트는 학습 중에 새로운 행동을 시도하고 결과를 관찰할 수 없다. 이 설정은 실제 세계와의 상호작용이 느리고 비용이 많이 들며 때로는 안전하지 않고, 대량의 로봇 데이터 로그가 이미 존재할 수도 있는 로봇공학에 매력적이다. 모방 학습과 달리 오프라인 RL은 데이터에 있는 보상을 사용하므로, 원리적으로는 예를 들어 서로 다른 궤적의 좋은 부분을 결합하여 데이터를 생성한 행동보다 나은 정책을 학습할 수 있다.

핵심 난제는 학습된 정책과 데이터 사이의 분포 이동(distributional shift)이다. 가치 기반 방법은 학습된 정책이 고를 다음 행동의 가치로부터 부트스트래핑하여 Q(s, a)를 추정한다. 그 행동이 데이터셋에 드물게 있거나 전혀 없으면 그 가치 추정은 제약을 받지 않으며, 최대화는 바로 그렇게 가치가 잘못 높게 추정된 행동을 고르는 경향이 있다. 온라인 RL은 그 행동을 시도해 봄으로써 그런 오류를 바로잡지만, 오프라인 RL은 그럴 수 없다. 따라서 오프라인 방법은 여러 방식 중 하나로 데이터 가까이에 머문다. 정책을 행동 정책 쪽으로 제약하거나(BCQ, Fujimoto 등, 2019처럼), 보지 못한 행동의 가치에 페널티를 주거나(conservative Q-learning, Kumar 등, 2020처럼), 분포 밖 행동을 아예 질의하지 않거나(implicit Q-learning, Kostrikov 등, 2021처럼), 오프폴리시 액터-크리틱 손실에 행동 복제 항을 추가하는 방식이다.

결과는 데이터셋에 크게 좌우된다. 상태와 행동을 얼마나 포괄하는지, 데이터를 만든 행동의 품질이 어떤지, 보상이 주어져 있는지 아니면 나중에 레이블을 붙여야 하는지가 그렇다. 흔한 작업 흐름은 오프라인 사전 학습 후 제한된 양의 온라인 미세 조정을 하는 것이다. 오프라인 RL은 오프폴리시(off-policy) RL과 관련은 있지만 구별된다. 오프폴리시 알고리즘은 다른 정책이 생성한 데이터로부터 학습하지만 보통 새 데이터를 계속 수집하며, 그 수집이 멈추면 성능이 나쁜 경우가 많다.

중요한 이유

대부분의 로봇은 하드웨어에서 수백만 번의 시행착오 에피소드를 감당할 수 없지만, 많은 팀이 원격 조작, 스크립트 실행, 이전 실험의 로그를 가지고 있다. 오프라인 RL은 그런 데이터를 안전하게 정책으로 바꾸도록 설계된 방법들의 계열이며, 고정된 데이터셋에 표준 오프폴리시 알고리즘을 그냥 돌리면 왜 실패하는 경우가 많은지를 설명해 준다.

주요 응용

  • 기록된 원격 조작 및 스크립트 데이터로부터 조작 정책 학습
  • 제한된 온라인 미세 조정 전에 로봇 정책을 사전 학습
  • 보상 레이블을 이용해 최적이 아닌 시연보다 나은 정책 얻기
  • 주행처럼 탐색이 안전하지 않은 환경에서 데이터로부터 학습
  • 이전 실험의 데이터를 버리지 않고 재사용

실제 사례

한 창고 팀은 스크립트 파지 시스템이 몇 달 동안 기록한 집기 시도 로그를 가지고 있으며, 각 시도에는 성공 또는 실패 레이블이 붙어 있다. 새로운 시행을 돌리는 대신, 팀은 이미지와 그리퍼 상태를 입력으로 하여 이 로그로 conservative Q-learning 에이전트를 학습시킨다. 배치 전에 학습된 정책이 고르는 파지를 데이터 분포와 비교하고, 감독하에 운영되는 시험 셀에서 따로 남겨 둔 소수의 물체로 평가한다. 그런 다음 사람이 로봇을 멈출 수 있는 상태에서 짧은 기간의 온라인 미세 조정을 허용하며, 이를 통해 드물게 보이는 상황에서 남아 있던 오류가 바로잡힌다.

흔한 오해

  • 오프라인 RL은 데이터셋에 대한 행동 복제일 뿐이다 — 오프라인 RL은 보상을 사용하며 데이터보다 나아질 수 있지만, 행동 복제는 데이터 안의 행동을 복사한다
  • 어떤 오프폴리시 알고리즘이든 오프라인에서 작동한다 — 새로운 데이터가 없으면 표준 오프폴리시 방법은 보지 못한 행동의 가치를 과대평가하며 붕괴하는 경우가 많다
  • 데이터가 많을수록 언제나 더 나은 오프라인 정책이 나온다 — 포괄 범위와 품질이 중요하다. 거의 똑같은 행동으로 이루어진 대규모 데이터셋은 개선의 여지가 거의 없다
  • 오프라인 RL은 실제 시스템에서 평가할 필요가 없다 — 정책 성능의 오프라인 추정치는 신뢰할 수 없으므로, 실제 시험이나 신중하게 구성한 시뮬레이션 시험이 여전히 필요하다

알아야 할 사람

  • 대규모 기록 데이터셋을 다루는 로봇 학습 연구자
  • 운영 데이터를 생산하는 로봇 군을 가진 엔지니어
  • 시뮬레이션에서 하드웨어로 넘어가는 강화 학습 실무자
  • 자율 주행 및 조작 분야의 ML 팀

관련 기술

  • Conservative Q-Learning(CQL)
  • Implicit Q-Learning(IQL)
  • Batch-Constrained Q-Learning(BCQ)
  • D4RL
  • Decision Transformer

관련 용어

  • Reinforcement Learning
  • Behavior Cloning
  • Covariate Shift
  • Soft Actor-Critic
  • Markov Decision Process (MDP)
  • Imitation Learning

관련 프로젝트

  • LeRobot: HuggingFace ML library for real-world robotics in PyTorch
  • MuJoCo: DeepMind physics engine for robotics and ML research
  • PyBullet: Python physics simulator for robotics and RL research with fast CPU-based simulation
  • OpenPI: Physical Intelligence VLA foundation models for general robot control
  • Microduck: Pollen Robotics' $399 walking duck robot: open-source software, closed hardware
  • Isaac Lab: NVIDIA robot learning framework: one task API across Newton, PhysX and Isaac Sim

동영상

  • Offline Reinforcement Learning: RAIL
  • NeurIPS 2020 Tutorial on Offline RL: Part 1: RAIL

이 웹사이트는 JavaScript가 필요합니다. 오픈소스 로봇 프로젝트를 탐색하려면 JavaScript를 활성화하세요.