Skip to main content
QUICK REVIEW

[논문 리뷰] Learning to Synthesize Programs as Interpretable and Generalizable Policies

Dweep Trivedi, Jesse Zhang|arXiv (Cornell University)|2021. 08. 31.
Reinforcement Learning in Robotics참고 문헌 116인용 수 10
한 줄 요약

이 논문은 보상 신호만을 사용하여 강화학습 작업을 위한 해석 가능하고 일반화 가능한 프로그래머티컬 정책을 합성하는 데에 초점을 맞춘 이중 단계 프레임워크인 LEAPS를 제안한다. 먼저 비지도 학습을 통해 프로그램-보상 쌍으로부터 연속적인 프로그램 임베딩 공간을 학습하고, 이후 이 공간을 대상으로 CEM 기반 탐색을 수행하여 작업 해결 프로그램을 발견한다. Karel 도메인에서 DRL 및 프로그램 합성 베이스라인을 능가하면서도 인간이 이해할 수 있고, 새로운 구성으로까지 일반화 가능한 성능을 보였다.

ABSTRACT

Recently, deep reinforcement learning (DRL) methods have achieved impressive performance on tasks in a variety of domains. However, neural network policies produced with DRL methods are not human-interpretable and often have difficulty generalizing to novel scenarios. To address these issues, prior works explore learning programmatic policies that are more interpretable and structured for generalization. Yet, these works either employ limited policy representations (e.g. decision trees, state machines, or predefined program templates) or require stronger supervision (e.g. input/output state pairs or expert demonstrations). We present a framework that instead learns to synthesize a program, which details the procedure to solve a task in a flexible and expressive manner, solely from reward signals. To alleviate the difficulty of learning to compose programs to induce the desired agent behavior from scratch, we propose to first learn a program embedding space that continuously parameterizes diverse behaviors in an unsupervised manner and then search over the learned program embedding space to yield a program that maximizes the return for a given task. Experimental results demonstrate that the proposed framework not only learns to reliably synthesize task-solving programs but also outperforms DRL and program synthesis baselines while producing interpretable and more generalizable policies. We also justify the necessity of the proposed two-stage learning scheme as well as analyze various methods for learning the program embedding.

연구 동기 및 목표

  • 딥 강화학습(DRL) 정책에서의 해석 가능성과 일반화 부족 문제를 해결하기 위해.
  • 전문가 지시나 입력/출력 쌍 없이 희소 보상 신호로부터 프로그램 합성을 가능하게 하기 위해.
  • 복잡한 행동을 위한 루프와 조건문을 지원하는 융통성 있고 표현력 있는 프로그램 표현 방식을 개발하기 위해.
  • 효율적인 프로그램 구조 탐색을 위한 재사용 가능한 연속 잠재 공간을 만들기 위해.
  • 학습된 프로그램이 더 큰 상태 공간과 훈련 데이터 외부의 새로운 환경 구성으로까지 일반화되면서도 인간이 편집 가능한지 확인하기 위해.

제안 방법

  • 변동 가능 자동에코더(VAE)를 사용하여 무작위로 생성된 프로그램과 환경 내에서 유도된 행동으로부터 연속적인 프로그램 임베딩 공간을 학습한다. 이때, 미분 가능한 프로그램 디코더를 갖춘 VAE를 사용한다.
  • 이중 단계 학습을 수행한다: 먼저 비지도 프로그램-보상 재구성에 대해 프로그램 VAE를 사전 훈련한 후, 정책 그래디언트 목표 함수를 사용해 미세 조정한다.
  • 주어진 MDP 작업에서 보상의 최대화를 달성하는 프로그램을 찾기 위해 학습된 잠재 공간에서 CMA-ES(CEM)를 사용해 탐색한다.
  • 잠재 벡터에서 실행 가능한 코드를 재구성하기 위해 트랜스포머 기반 시퀀스 모델을 사용하는 프로그램 디코더를 도입한다.
  • 훈련 안정성과 샘플 효율성을 향상시키기 위해 커리큘럼 학습과 보상 형태 조정을 적용한다.
  • 재훈련 없이도 여러 작업 간에 사전 훈련된 프로그램 임베딩 공간을 재사용한다.

실험 결과

연구 질문

  • RQ1전문가 지시나 입력/출력 쌍 없이 보상 신호만으로 프로그램 임베딩 공간을 학습할 수 있는가?
  • RQ2비지도 사전 훈련과 보상 기반 탐색으로 구성된 이중 단계 학습 방식이 종단 간 학습에 비해 샘플 효율성과 정책 성능을 향상시키는가?
  • RQ3학습된 프로그램 정책이 훈련 분포를 초월한 더 큰 상태 공간과 새로운 환경 구성으로 일반화되는가?
  • RQ4루프와 조건문이 있는지 여부에 따라 다른 프로그램 표현 방식이 정책 성능와 해석 가능성에 어떤 영향을 미치는가?
  • RQ5합성된 프로그램이 인간이 얼마나 잘 이해하고 편집하여 성능 향상을 이룰 수 있는가?

주요 결과

  • LEAPS는 모든 Karel 작업에서 랜덤으로 설정된 10개의 초기 구성에서 100% 성공률를 기록했으며, STAIRCLIMBER와 FOURCORNER와 같이 복잡한 작업들에서도 DRL 방법이 실패한 상황에서 성공을 거두었다.
  • CLEANHOUSE와 HARVESTER 작업에서 DRL 에이전트가 의미 있는 행동을 학습하지 못한 상황에서도 LEAPS는 성공률와 샘플 효율성에서 DRL, HRL, VIPER 및 프로그램 합성 베이스라인을 모두 능가했다.
  • 절단 실험 결과에 따르면 이중 단계 학습 방식이 필수적이었다: 잠재 공간에서의 무작위 탐색(LEAPS-rand)은 효과적인 정책를 찾지 못했지만, 학습된 공간에서 CEM 탐색은 성공했다.
  • LEAPS가 합성한 프로그램들은 더 큰 상태 공간(예: 10배 큰 미로)과 새로운 구성으로까지 일반화되었으며, 훈련 데이터를 초월한 강력한 일반화 능력을 입증했다.
  • 인간 사용자들이 LEAPS가 생성한 프로그램을 이해하고 편집하여 성능 향상을 이룰 수 있었으며, 이는 방법의 해석 가능성과 편집 가능성 확인되었다.
  • 프레임워크는 M1에서 전체 훈련에 대해 GPU 메모리 8.8GB, 총 104시간이 소요되었으며, CEM을 통한 추론은 각 작업당 10분 이내였다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.