본문 바로가기
연구/머신러닝

역강화학습 IRL (Inverse Reinforcement Learning)

by 굿- 2020. 12. 15.
반응형

RL method의 limitation은 real world상황에서 쓰기 어렵다는 점이다. IRL은 다양한 상황에서도 최적 policy를 찾을 수 있어서 요새 활발히 연구되고 있는 것 같다. IRL을 들여다보던 중, 2019년 12월에 발행된 ETRI의 역강화학습 기술 동향 페이퍼를 찾았다.

 

이상광,  김대욱,  장시환,  양성일. (2019). 역강화학습 기술 동향. [ETRI] 전자통신동향분석, 34(6), 100-107.

ettrends.etri.re.kr/ettrends/180/0905180009/

 

역강화학습 기술 동향

강화학습(RL: Reinforcement Learning)에서는 에이전트(agent)가 어떤 상태(state)에서 행동(action)을 수행할 때마다 그 성능에 대한 피드백을 제공하는 보상 함수(Reward Function)가 주어진다. 이 보상 함수는

ettrends.etri.re.kr

읽기만 하자니 나중에 기억이 나지 않을 것 같아 블로그에 적으며 살펴보려 한다.

RL과  IRL의 차이

RL이 주어진 reward function을 통해 optimal policy 를 계산한다면,

IRL은 optimal policy(최적 정책, 곧 행동 이력) 를 입력으로 reward function을 계산한다.

 

RL에서는 agent가 어떤 state에서 action을 수행할 때마다 그 성능에 대한 피드백을 제공하는 reward fuanction이 주어진다. 이 reward fuction 은 optimal policy를 구하는데 이용되고, 이 때의 미래 보상값은 최대가 된다.

게임하는 에이전트를 예로 들면, 점수/승패/체력 등 플레이어를 평가하는 reward function이 주어지고, 이를 통해 최대 reward를 획득할 수 있는 optimal policy를 계산한다. agent는 optimal policy에 따라 state에서의 action을 수행한다.

 

IRL은 agent의 policy나 행동 이력을 통해 그 행동을 설명하는 reward function을 구한다. agent가 최선의 행동을 선택했다는 가정이 필요하고, 그 가정 하에 agent 행동에 대한 보상 함수를 추정하는 학습 방식이다.

 

RL과 IL(imitation learning)의 차이

RL은 명확하게 보상을 구할 수 있어야 한다.

IL은 전문가의 행동을 모방하여 최상의 성능을 달성하는 것으로, 직접적인 보상이 요구되지 않고, 정책을 직접 설계하여 전문가가 원하는 행동을 쉽게 발현시킬 수 있다. (리워드 필요 없이 바로 폴리시 찾는듯)

 

IL에는 behavior cloning(행동 복제)과 Apprenticeship learning(견습 학습)이 있다.

behaviro cloning은 전문가 시연 데이터에서 (상태, 동작) 데이터를 추출하여 지도학습을 통해 policy를 생성한다. 직관적인 단순 학습은 효율성이 높지만 복잡도가 높아지면 데이터가 많아야 한다. 전문가 시연 궤적도 사람이 만든것이기 때문에 양과 질에 한계가 있다는 문제가 있다.

Apprenticeship learning은 전문가 시연 데이터에서 보상함수를 만들고 만든 보상함수를 통해 optimal policy를 학습한다. (보상함수를 추정한다는데 정확하게 모르겠음.) IRL방식을 연계 활용하면, 무작정 전문가 시연을 따라하는 감독학습방법보다 적은 데이터로 학습이 가능하고 예상치 못한 환경에 대응이 잘 된다.

 

IRL 알고리즘

1. ALIRL

전문가 행동을 그대로 따라하는것 보다 전문가 행동에서 목적하는 의도를 학습하는것이 필요한데, 이 ALIRL은 전문가 시연에 보상함수를 최대화 하기 위한 행동이 내재되어있다는 가정 하에, 숨겨진 보상함수를 복구하기 위해 IRL을 사용하는 알고리즘이다. reward function을 우리가 알 수 있는 feature들의 linear combination으로 표현하고, 이를 IRL 방법으로 학습한다.

 

2. MaxEnt IRL : Maximum  Entropy IRL

3. GCL : Guided Cost Learning

4. GAIL : Generative Adversarial Imitation Learning

5. VAIL : Variational Adversarial Imitation Learning

6. InfoGAIL : InfoGAN과 비슷한 방법으로 GAIL에 확장 적용

 

아래 강의자료도 봤었는데, 다음에 한번 더 봐야겠다.

people.eecs.berkeley.edu/~pabbeel/cs287-fa12/slides/inverseRL.pdf

 

댓글