이번 포스팅에선 강화학습이 무엇이고, 머신러닝의 큰 틀 안에서 어떤 포지션을 잡고 있는지 살펴보겠습니다. 강화학습개요를 시작으로 강화학습의 전반적인 내용을 다룰 생각입니다.
강화학습개요
강화학습이란?
강화학습(Reinforcement Learning)은 머신러닝의 한 영역으로 행동심리학에서 영감을 받은 방법입니다. 어떤 환경(Environment)안에서 행동의 주체인 에이전트(Agent)가 선택 가능한 행동(Action)들 중 보상(Reward)을 최대화하는 행동 또는 행동 순서를 선택하도록 학습하는 방법입니다. (Wikipedia, Reinforcement Learning)
머신러닝의 한 영역 치고는 새롭게 등장하는 용어(환경, 에이전트, 행동, 보상)가 많아서 잘 와닿지 않을 것 같습니다. 이번 포스팅을 다 보고나면 어느정도 감은 잡을 수 있습니다!
스키너의 쥐 실험 (강화의 의미)
스키너 상자는 하버드 대학교 심리학과 교수 B. Skinner가 동물 행동을 연구하는 데 사용된 실험 기구 입니다. 스키너는 상자 안에 쥐를 넣어 놓고 실험을 합니다.
- 굶긴 쥐를 스키너 상자에 넣는다.
- 굶은 쥐는 상자 안에서 돌아다니다 우연히 지렛대를 누른다.
- 지렛대를 누르자 먹이가 나온다.
- 지렛대와 먹이 간 상관관계를 모르는 쥐는 다시 상자 안을 돌아다닌다.
- 또 우연히 지렛대를 누르고 먹이를 얻는다.
- 이런 상황이 반복되며 쥐는 지렛대와 먹이 간 상관관계를 학습한다.
앞서 논의된 용어로 상황을 정리하면, 환경은 스키너 상자가, 에이전트는 쥐가, 행동은 지렛대를 누름 + 돌아다님이, 보상은 먹이가 됩니다. 강화는 에이전트가 이전에 알지 못하지만 직접 시도하면서 행동과 보상의 상관관계를 학습하는 것을 의미합니다.
강화학습 상호작용
강화학습은 환경과 에이전트가 행동, 보상, 다음 상태로 상호작용하며 이루어 집니다. 간단하게 요약해보면 아래 그림과 같습니다.
에이전트는 정답을 알 수 없는 환경에 놓여있습니다. 그 환경 안에서 어떤 행동을 하면 환경은 에이전트에게 적절한 보상을 해주고, 다음 상태가 어떤지를 전달해줍니다. 상호작용이 무한히 반복되어 에이전트는 보상을 최대로 얻기위해 노력하면서 강화된다고 할 수 있습니다.
강화학습은 환경에 대한 정보(행동, 보상, 다음상태)만 주어지면 에이전트가 언제든지 학습할 수 있습니다. 즉, 특별히 먼저 데이터를 준비하지 않더라도 데이터를 생성해가면서 학습하는 것이 가능합니다. 이 부분이 강화학습이 우리가 알고 있는 머신러닝의 지도학습, 비지도학습과 가장 크게 구분 되는 점입니다.
머신러닝 대분류
최근에는 self-supervised learning이라는 영역이 추가되는 분위기지만, 우선은 머신러닝은 위처럼 크게 세가지로 분류할 수 있습니다. 위 분류를 분석 목적 관점과 데이터 형태의 관점으로 구분지어 이해해보겠습니다.
분석 목적
- Reinforcement Learning: 에이전트의 보상을 최대화하기 위함
- Supervised Learning: 목적변수($Y$)를 설명변수 ($X$)로 예측하기 위함
- Unsupervised Learning: 분석하고자하는 데이터의 숨겨진 구조를 규명하기 위함
데이터 형태
- Reinforcement Learning: 환경, 에이전트, 보상, 상태만 잘 정의하면 됨 (상황에 따라 데이터가 필요할 수도 있다)
- Supervised Learning: 목적변수 ($Y$), 설명변수 ($X$) 형태의 데이터
- Unsupervised Learning: 설명변수 ($X$) 형태의 데이터
이상으로 본 포스팅을 마치고 다음 포스팅부터 본격적인 강화학습 방법들을 정리해서 하나씩 작성하겠습니다.
References
Wikipedia contributors. "Reinforcement learning." Wikipedia, The Free Encyclopedia. Wikipedia, The Free Encyclopedia, 31 Aug. 2019. Web. 11 Sep. 2019.
Wikipedia contributors. "Operant conditioning chamber." Wikipedia, The Free Encyclopedia. Wikipedia, The Free Encyclopedia, 11 Sep. 2019. Web. 11 Sep. 2019.
'Reinforcement Learning > Introduction' 카테고리의 다른 글
Markov Decision Process (2) - Bellman Equation (2) | 2019.10.03 |
---|---|
Markov Decision Process (1) - 개요 (0) | 2019.10.02 |
Multi-Armed Bandit for RL(3) - Gradient Bandit Algorithms (0) | 2019.09.17 |
Multi-Armed Bandit for RL(2) - Action Value Methods (0) | 2019.09.15 |
Multi Armed Bandit for RL(1) - 개요 (2) | 2019.09.15 |
댓글