Meta Reinforcement Learning As Task Inference
Tensorflow KR 논문 읽기 모임 PR12(Season 3)의 Meta Reinforcement Learning As Task Inference (PR-239)를 발표하신 Changhoon Jeong님 영상을 보고 정리하였습니다.
Meta Reinforcement Learning As Task Inference
Overview
(You should include contents of summary and introduction.)
- 접근 방법 : Meta-RL을 하나의 paritally observed로 본다.
- MDP의 모든 정보를 agent가 전부 받는 게 아니라 부분적으로만 관찰
- RL은 하나의 control문제로 볼 수 있는데, 여기에 inference problem이 추가된 것
- 즉 POMDP(Partially-Observable Markov Decision Processes)문제를 해결하는 문제가 됨.
- POMDP의 솔루션 : observation trajetory를 가지고 optimal policy를 찾는 것(미래 보상이 최대가 되는 쪽으로) == Reinforcement learning
- 그러나 주어진 데이터가 partially observation이기 때문에 또 하나의 모듈이 필요함 ->
belief state
- 그러나 주어진 데이터가 partially observation이기 때문에 또 하나의 모듈이 필요함 ->
- POMDP의 솔루션 : observation trajetory를 가지고 optimal policy를 찾는 것(미래 보상이 최대가 되는 쪽으로) == Reinforcement learning
- Belief State : 어떤 observation trajectory가 주어졌을 때 실제 true state의 probability
- 이걸 구할 수 있으면 POMDP가 구해짐
- POMDP가 구해지면 Meta-RL 문제 해결!
- 이걸 구할 수 있으면 POMDP가 구해짐
Observation이 주어졌을 때 optimal policy를 구하는 것은 belief state를 구할 수 있으면 문제가 풀린다! -> 그러면 Meta-RL 문제도 풀린다.
- 이 논문의 key point : 두 가지 Neural Network를 사용
- control하는 policy Network
- belief state를 예측하는 inference Belief Module
- auxilary supervised learning 로 해결 (Meta-learning때에만)
- 즉, belief module은 meta-learning 때 supervised learning으로 학습됨.
- off-policy 사용(Meta-RL 에서는 대개 on-policy)
Related work (Basic concepts)
- Meta Learning : Learning to Learn
A
trajectory
is just a sequence of states and actions.- Meta RL
- env.는
MDP
로 표현됨.M = {S,A,P,r}
- Agent <-> env. : 서로 interact하면서 future reward를 Max. 시키는 세타 찾기
- Meta learning : 여러 개의 task들을 sampling하여 meta-learning한 후, meta-test시 빠르게 adaption될 수 있어야 함.
- RL -> 그 task들 각각이 하나의 MDP로 정의 가능!
- MDP를 여러개 sampling해서 학습하고, 그걸 통해 optimal theta얻는 것이 목표
- test시에는 처음 보는 태스크(전체적인 쉐잎은 비슷해야)에 잘 적용되어야 함.
- 접근 방법
- env.는
- MDP(Markov Decision Processes) : (X,A,P,p0, R, discount factor)
- control이 있다 -> 대표적으로 RL
- state가 완전히 관측되냐, 부분적으로 관측이 되냐 -> MDP/POMDP
- POMDP(Partially-Observable Markov Decision Processes)
off-policy algorithm : 현재 학습하는 policy가 과거에 했던 experience도 학습에 사용이 가능하고, 심지어는 해당 policy가 아니라 예를 들어 사람이 한 데이터로부터도 학습을 시킬 수가 있다.
- on-policy : 1번이라도 학습을 해서 policy improvement를 시킨 순간, 그 policy가 했던 과거의 experience들은 모두 사용이 불가능하다.
Methods
(Explain one of the methods that the thesis used.)
- observed trajectory를 가지고 optimal policy를 찾는 것(미래 보상의 합이 최대가 되는 action set, policy) == RL
- 그러나 주어진 데이터가 partially 하기 때문에 또 하나의 모듈이 필요함
- Belief State 를 구할 수 있으면 위의 문제가 풀림.
- Belief State -> POMDP -> Meta-RL 해결
- 최근 Meta-RL에서의 POMDP 해석 문제
- 방금까지는 unobserved state
- But 우리는 unobserved task
- 내가 어느 task를 풀고 있는지 모르는 상태
- state를 완전히 관측을 못한다는 것이 아니라!! 내가 어떤 task를 풀고 있는지를 관측하지 못한다는 관점으로 문제를 푸는 것임 == 어떤 task를 풀어야 하는지 task 정보를 완전하게 관측할 수 X -> 그래서
Task Inference
- State, Action은 모든 MDP간에 sharing되어 있음. W가 붙은 것들은 task-specific함.
- 이 세가지에 접근해서 Meta RL을 푼다.
- 목표 : meta-test시 처음 보는 task에도 적은 interaction으로 reward를 Max. 시키는 optimal policy 찾기
- A, S는 sharing - S는 true state와 Agent 입장에서 모르는 task에 대한 w를 concat해서 만듦
- 나머지들은 task-specific하게 정의
- w만이 agent입장에서는 unobserved state라고 정의
- agent입장에서는 실제 task label인 w에 access 할 수 없다고 가정. (task에 대한 MDP를 다 모르는 것)
- belief state의 posterior는 bayes Rule과 유사
- policy가 식 안에 없음 -> task에 대한 posterior는 policy와 independent하다.
- off-policy algorithm 사용 가능 (보통 meta-RL에서는 on-policy : 데이터를 모으자마자 바로 업데이트)
Train
어떻게 모델을 학습시키는가
- 앞서 언급한 z 가 여기서는 belief state(task에 대한 모든 정보를 담고 있다)
- belief state estimate 가능 -> optimal policy 구할 수 있다.
- 컴퓨팅 어려움 -> 2가지 NN 모델로 approximate 해야 한다.
Control하는 Policy Network
Belief Module
- 어떻게 학습시키는가?
- Meta-Learning 안에서는 Supervised Learning이 된다.
- meta-learning 때에만 사용. 실제 우리가 원하는 meta-test에서 적은 에피소드만으로 빠르게 adapt할 때는 이 정보들을 더이상 사용하지 않음.
- task를 supervised learning으로 풀었다!
- w, h_t : independent of policy => belief network도 off-policy로 효율적으로 학습 가능
Architecture
LSTM, IB : optional (IB : regularization 효과)
A. Baseline LSTM Agent : belief network가 없는 일반 agent
B. 논문에서 제안된 모델 : trajectory 넣어서 Belief network 학습 - Belief feature + trajectory 해서 policy network 학습 - 각자 역할에 집중
C. Mixed : Network 하나에 합친 것
Experiment
- Multi-armed bandit : 20 arms and 100 horizon.
- 20번 당겼을 때 reward probability => task description. (arm들의 vec.)
- Semicircle : 반원 안에서 naviagtion
- task desription : 각도
- cheetah : task description -> velocity
Main contributions
- Supervised Learning을 통해서 performance 높임
- Belief network 학습시킬 때 off-policy 알고리즘 사용 가능
- continuous, sparse rewards 환경에서도 좋았다
Additional studies
(If you have some parts that cannot understand, you have to do additional studies for them. It’s optional.)
POMDP
Belief State?
References
(References for your additional studies)
https://www.youtube.com/watch?v=phi7_QIhfJ4 - 논문 설명
https://newsight.tistory.com/250 - policy 부분 개념