강화학습 기초 - Introduction

 개요

참고한 책 : Reinforcement Learning: An Introduction, 2nd edition (Richard S. Sutton, Andrew G. Barto)

먼저 Sutton, barto 교수님의 책의 강화학습에 대한 정의로부터 이야기를 풀어볼까 한다. 

"Reinforcement learning is learning what to do--how to map situations to actions--so as to maximize a numerical reward signal."

강화학습은 '어떨 때 뭘 하는게 최고로 좋을지를 배우는 것'에 대한 이야기다. 위의 인용한 문장은 향후 나올 개념들, 알고리즘들을 관통하는 문장으로 잘 기억해 두면 도움이 된다고 생각한다.

위 문장에는 situation, action, reward와 같은 개념들이 나온다. 이러한 개념은 MDP(Markov decision processes)에 기반해 모델링 되는 경우가 대부분이다. 때문에 MDP에 대해서 알아야할 필요가 있으며 이와 관련 용어들을 공부해야 한다. 또한 저자는 4가지의 주요 개념을 소개하는데 각각 policy, reward signal, value function, model 이다. 추후 MDP챕터에서 추가로 설명하려 한다. 

강화학습에 대한 한가지 예시를 들어본다.
  • 가젤 새끼는 태어나자마자 잘 걷지 못하고 몇분동안 발버둥을 치는데, 이런 과정으로부터 스스로 걷는 방법을 학습하고 30분 후에는 달리기까지 하게 된다.
이처럼 가젤 새끼는 땅바닥과의 상호작용, 시행착오를 통해 달리기라는 목표를 스스로 이루어낸다. 컴퓨터를 사용하는 강화학습도 이러한 틀과 동일하게 생각할 수 있으며 위에서 나온 여러가지 개념들이 오밀조밀하게 서로 역할을 하여 학습하고 목표를 이뤄낸다.

책에서는 강화학습을 computational한 접근을 통해 풀어낸다. 쉽게 말해 컴퓨터 알고리즘을 통해 강화학습을 구현하는 것이다. 하지만 위에서 봤듯 강화학습은 생명체로부터 시작된 개념이다. 때문에 MDP나 알고리즘을 공부하기 이전에 14,15 챕터의 Psychology(심리학) 및 Neuroscience(신경과학)을 구경해 보는 것도 재미있을 듯 하다.

다음 글은 14,15 챕터의 Psychology 및 Neuroscience 에 대한 내용중 일부를 소개하려 한다. 어렵고 생소한 내용이고 알고리즘 공부에는 별 도움이 안될 듯 하다. 하지만 한번쯤 구경해볼만 하다고 생각하는데, 그 이유는 단순히 알고리즘의 관점에서만 바라보기보다 한발짝 물러나 생명체의 관점에서 바라봄으로써 생기는 프레임이 이후 공부에 도움이 될 수도 있지 않을까 해서이다. 


댓글

가장 많이 본 글

구글 람다(LaMDA)란? - 구글의 언어 모델

알파고 강화학습 원리

버텍스 AI란? - 구글 인공지능 플랫폼

카타고와 바둑 두어보기

뉴럴 네트워크란?

블로그 글 목록

뉴럴 네트워크를 학습시키는 방법