Reinforcement learning in artificial and biological systems

Reinforcement learning in artificial and biological systems 리뷰논문에 대한 글.

저자들은 biological inspired RL 개발쪽에 관심이 많은듯하다. 본인들이 개발한 RL 시스템은 spike-based deep, continuous local learning(DCLL)이다. 그래서 machine RL의 한계에 대해 지적하는데, 환경이 제한되어있고 정적이라는 점이 큰 한계라고 한다. Open AI Gym, game environment 등 모두 크지 않고, 정적이다. 하지만 biology의 learning enviroment는 아주 dynamic하다. 대신 ML RL에서는 문제는 어려운 경향이 있고(ex, chess, 바둑 등), biology의 RL 문제는 쉬운 경향이 있다(ex, armed bandit 등 간단한 선택 문제). 이는 실험의 용이함, 논문으로 만들어질 가능성에 의한 것이지 실제 biology의 RL 문제가 쉽다는 것은 아니다. Goal을 어떤 식으로 설정하느냐에 따라 문제가 복잡해 질 수 있고, 그러면 행동의 sequence, 선택의 다양성, 그로인한 경우의 수가 폭발적으로 증가하게 되기 때문에 biology 연구에는 간단한 행동패러다임만 다루는 것이다. 예를 들어 커피샵 선택 문제를 보자. 스타벅스나 투썸 또는 동네 커피점을 선택하고, 그 선택이 강화되어 행동이 학습되는 과정까지 선택에 영향을 주는 요소는 너무도 많다. 거리, 선택 할때의 시간, 자리의 한적한 정도, 하루 중의 시간 말고 계절별 선호의 차이, 커피숍에서 하려는 일과의 성격(친구를 만냐느냐? 아님 혼자 가느냐?), 음료의 종류 등등. 이런 요소들을 고려하기 시작하면 도무지 정상과학이라고 할 수 없는 영역으로 가게된다. 그럼에도 불구하고 이런 sequence를 고려하는 연구자가 있긴한데, human psychology, fMRI study를 하는 Timothy Behrens다. SfN 2017때 그가 한 plenary lecture를 들었었다. 또한 Behrens는 2009에 The computation of social behavior.라는 review 논문은 science에 실기도 했다.

Biology system에서 RL은 PFC와 striatum 사이의 connection에 value가 coding되고 있는 듯하다. 또한 time scale이 fast나 slow system으로 나눠질 수 있는데, 여기서 말하는 fast, slow개념은 Botvinick의 fast, slow와는 별개의 개념이다. Biology RL의 amygdala에 fast learning(fear response의 반응속도와 학습 속도를 생각해보라), striatum에 slow learning이 coding되고 있는 듯하다. 이런 학습에는 ML의 back-propagation이 학습기전으로 적용될리는 없고, 당연히 RPE 이론에 기반한 dopamine이 중요한 modulator로 작용할 것이라고 보고 있다.

RL에서 Model의 필요에 대해서 생각해보면, model-based learning의 경우 bayesian inference가 가능해진다. Model에서 예측하는 것과 실제 시도에서 나온 결과를 bayes rule로 update할 수 있기 때문이다. 그렇기 때문에 data-efficient하다. 하지만 model-free learning 의 장점도 있기 때문에 mixture expert 방식을 사용할 거라고 보고 있다.

이 팀은 hierarchical RL 개념도 제안하는데, biology 또는 human behavior를 고려하면 plausible한 제안이다. Goal를 subgoal로 나누고, subgoal에 대해서는 각각 training 시키는 것이다. Subgoal training system마다 reward는 서로 다르게 설정할 수 있는데, 최근 curiosity를 reward로 준 Artificial agent에 대해 논문이 나온바 있다. 실제 인간의 학습 훈련에서도 사용될 수 있는 개념이다. Subgoal로 나눈다는 것은 task를 subtask로 나눈다는 의미이고, 이렇게 쪼개야 학습, 일의 효율이 높아짐은 잘 알려져 있는 사실이다.