Untitled

Untitled

많은 연구들이 RL 상황에서 특정 task를 잘 수행하는 specialist가 되도록 학습을 유도하지만, real-world에서는 generalist agent가 필요하다. 다양한 task에 잘 적응해 빠르게 학습할 수 있도록 강화학습을 진행하는 것이 meta-RL이라고 할 수 있다.

Untitled

Meta-supervised learning(SL)의 경우에는 몇 개의 training data만을 보고도 test data를 맞출 수 있도록 학습이 진행된다. 각 task(여기서는 한 줄의 row)에 맞는 model parameter $\phi_i$를 학습하고, 그 과정에서 얻은 정보를 바탕으로 meta-parameter $\theta$를 update한다.

Untitled

Meta-RL에서는 MDP(Markov decision process)에 adapt하도록 학습된다. 여러 MDP set에 대해 학습하여 general knowledge를 축적한다. 이번 강의에서는 $f_\theta$를 adaptation(inner loop)이라고 부르고, $\theta$를 meta-training(outer loop)이라고 부른다. Outer loop은 대부분 gradient descent(적어도 optimization 기반의 방법들은)로 update되지만 inner loop은 다양한 선택지가 있고, 이번 강의에서 이들을 살펴본다.

Untitled

SL과 RL의 결정적인 차이는 무엇일까?

주된 차이는 model 학습 방법보다도 data가 어떻게 구성되어 있는지에 있다. SL에서는 data가 우리에게 그냥 주어지고, RL에서는 agent가 data를 수집한다. 즉, meta-RL에서는 data에 adapt해야할 뿐만 아니라, adapt 하기 위해 적합한 data를 수집하는 방법도 학습해야 한다.

Untitled

Policy gradient 방식의 meta-RL algorithm은 먼저 현재 policy $\pi$에 따라 MDP data를 sampling하고, 그에 맞는 reward를 반영한 objective function을 계산한 뒤, policy gradient로 $\theta$를 update한다. 이는 trial and error 개념을 formalize 한 것으로, 좋은 것(high reward)은 더 많이, 안 좋은 것(low reward)은 더 적게 학습하도록 하는 방법이다.

Untitled

Policy gradient를 meta-learning algorithm으로 사용하는 방법은 어떤 것들이 있을까?

한 가지 option은 RNN을 사용하는 것이다. Task들을 학습하면서 얻은 information을 기억하는데 RNN cell의 hidden state를 사용할 수 있다. 즉, adaptation을 위한 $f_\theta$를 RNN으로 설정할 수 있다.

이 방법의 장점은 general 하게 적용할 수 있고, RNN의 개념을 그대로 사용할 수 있어서 expressive 하다는 점이다. 하지만 단점으로는 RNN이 converge 하기는 할지, 그리고 어떤 상태로 converge할지를 guide할 수 없고 단지 뭔가 그럴듯한 정보들을 잘 학습할 것으로 기대할 수 밖에 없다는 점에서 consistent 하지 않다는 점을 들 수 있다.

Untitled

다른 방법을 생각해보자. $\theta$를 update할 때처럼, $\phi$를 update할 때도 policy gradient를 사용하면 어떨까? 사실 MAML이 이 방법을 사용하고 있다. Task-specific parameter $\phi$를 update할 때 gradient를 사용한다. 이 방법은 gradient descent를 사용하기 때문에 적어도 local minima로 converge 할 것이고, 주어진 MDP에서 optimal한 $\phi$들을 학습할 수 있다는 점에서 consistent하다고 할 수 있다. 하지만 RNN model만큼 expressive 하지는 않다는 점이 단점이다.

여기서 RNN이 더 expressive 한 경우는 어떤 것이 있을지 생각해보자. 만약 최종 reward가 0 인 경우에 gradient 방식은 어떤 문제가 있을까? Gradient가 전혀 update 되지 않을 것이다. 새로운 환경의 dynamics를 분명히 봤음에도 불구하고, 이를 전혀 반영하지 못 하는 것이다. RNN의 경우에는 비록 어떤 보장은 못 하더라도, reward가 0인 episode에서도 새로운 환경에서 얻은 경험을 축적했을 것이라고 기대할 수 있다.