Reinforcement Learning/CS234 Winter 2019

CS234|1강. 강화학습 소개 & Sequential Decision Making

Jeina 2019. 10. 4. 00:13

#CS234 #Stanford University #Emma Brunskill #강화학습 #MDP #POMDP

 

 


본 글은 Emma Brunskill 교수가 Stanford University에서 강의한 [2019 Winter CS234] 를 듣고

영어로 진행된 강의를 한국어로 이해해 보면서 풀어서 정리한 글입니다.


강의 자료 슬라이드는 여기 에서 받으실 수 있습니다. 글의 각 부분마다 ppt 위치를 표시하였습니다.


 

 

 

 

Ⅰ. Overview of Reinforcement Learning

# 강화학습의 정의 # 뇌와 지능의 의미 # 강화학습의 적용 # 강화학습의 개념 # 머신러닝과 강화학습의 비교

 

1. 한 문장으로 정의하는 강화학습

(ppt. 3-7)

 

1) "Learn to make good sequences of decisions."

  • "sequences of decisions" : 단 하나의 결정이 아닌, 연속적인 결정을 하기 위해
  • "good" : 그 중에서도 최적의 결정을 하기 위해
  • "Learn" : 경험을 통해 학습해 나가는 것

 

2) "Fundamental challenge in AI and machine learning is learning to make good decisions under uncertainty."

  • AI와 머신러닝의 가장 근본적인 도전은 불확실성 안에서 좋은 결정을 내리는 법을 학습하는 것이다.

 

 

 

2. 원시생물체를 통해 바라본 뇌와 지능의 의미

(ppt. 8)

Figure: Example from Yael Niv

  • '지능'이라는 것은 어떤 의미를 가지는가?
  • 일생동안 진화를 겪는 원시 생물체의 케이스를 통해 이해해보자.
  • 어린 단계에서는 원시 뇌와 하나의 눈만을 가지고 떠다니면서 수영하다가, 성장을 마친 어른 단계에 들어가면 뇌를 '소화'한 후, 돌 위에 정착한다.
  • 여기서, 뇌가 더 이상 필요하지 않아 없앤다는 것은, no more decisions, no need for brain 의 의미로 볼 수 있지 않을까?
  • 이 사례는 뇌와 지능이라는 것이 근본적으로 "making decision" 과 연관되어 있다는 것을 암시한다.

 

 

 

3. 강화학습의 적용 예

(ppt. 9-13)

  • Atari : 이미지, 즉 픽셀 그 자체를 입력받아 어떻게 해야 점수를 올릴 수 있는지 학습
  • Robotics : 물체의 위치 좌표 등을 입력받아 원하는 위치로 옮기거나 옷을 개는 등의 방법을 학습
  • Educational Games : AI를 '사람의 잠재력을 증폭시키는 것, 즉 사람을 가르치는 것' 에 활용 (ex. 유치원생에게 분수를 가르치는 교육용 AI)
  • Healthcare : 의료용 데이터를 활용해서 환자에게 알맞은 처방/치료를 하도록 학습
  • 이 외에도 NLP, Vision 등등.. 강화학습이 적용될 수 있는 분야가 점점 넓어지는 중

 

 

 

4. 강화학습이 포함하는 개념

(ppt. 14-20)

1) Optimization: 최적화

강화학습의 최종 목표는 최적화 문제를 푸는 것이다. 최적화란, 가장 좋은 결과/결정을 내리기 위한 방법을 찾는 것, 또는 좋은 전략을 찾는 것을 말한다.

 

2) Delayed Consequences: 지연된 보상

강화학습에서는 즉각적인 피드백이 아니라, 지연된 피드백을 받을 수 있다.

ex) 지금 저축하는 돈이 은퇴 후에 요긴하게 쓰일지는 은퇴한 후에야 알 수 있는 것

이런 경우에는 알고리즘(정책)을 정할 때 당장의 보상과 함께 먼 미래에 기대되는 보상까지 고려해서 짜야한다. 이러한 지연된 보상이라는 특징은 행동과 보상 간의 인과관계를 직접적으로 알 수 없게 만들기 때문에 학습이 까다롭다.

 

3) Exploration: 탐험

데이터가 사전에 주어지지 않고, 오직 'Agent 가 탐험해본 것'에 대한 결과로만 데이터를 쌓아나갈 수 있다. 이 때, 특정 상황에서 주어진 여러 선택지 중 한 가지를 선택했다면 다른 선택지들에 대한 결과는 영원히 알 수 없을 수 있다.

 

4) Generalization: 일반화

정책이란, 과거의 경험을 통해 행동을 결정하는 규칙이다. 그렇다면, 왜 미리 짜여있는 정책을 사용하지 않는가?

만약, Atari 게임을 학습할 때, if-then 과 같은 statement 로 pre-programming 을 한다면 짜야하는 코드의 양이 어마어마해 질 것이다. 그래서 미리 짜여진 알고리즘을 사용하지 않고, 매 순간 데이터를 입력받으면서 학습하는 방법을 사용한다. 이 방법을 사용했을 때의 또 다른 강점은, Agent가 마주친 상황이 이전에 학습하지 못한 새로운 상황이더라도 어떤 행동을 취해야 하는지 알 수 있다는 점이다.

이렇게 이전에 학습하지 않은 상황에 대해서도 지금까지 학습한 것을 바탕으로 문제를 풀어나갈 수 있는 능력을 일반화(Generalization) 라고 한다. 강화학습은 모든 상황에서 일반화가 가능하도록 학습한다.

 

 

 

5. 다른 머신러닝 기법과 강화학습의 비교

(ppt. 21-26)

1) AI Planning

  • 포함하는 것 : Optimization, Generalization, Delayed consequences
  • 포함하지 않는 것 : Exploration

강화학습과 상당 부분 비슷하지만, Exlporation 을 하지 않는다는 점에서 살짝 다르다.

예를 들어 바둑의 경우, 바둑 세계가 어떻게 이루어지는지 (검은 돌과 흰 돌을 한 턴 씩 놓으며 진행된다는 것), 게임의 룰이 뭔지 (집을 더 많이 만들면 이긴다는 것) 알려주면서 시작되기 때문에 엄밀히 말하면 RL과는 조금 다른 AI Planning 이다. 다만, 모든 결정이 World에 영향을 미친다는 사실은 같다.

 

2) Supervised Machine Learning / Unsupervised Machine Learning

  • 포함하는 것 : Optimization, Generalization
  • 포함하지 않는 것 : Exploration, Delayed consequences

머신러닝의 지도 학습과 비지도 학습은 Optimization과 Generalization을 포함하지만, 학습할 데이터셋이 주어지기 때문에 Exploration은 할 일이 없다. 또한, 한 번 결정(분류 또는 예측 등) 을 하면 그 출력값이 맞았는지 틀렸는지 즉각적으로 알 수 있으므로 Delayed consequences 또한 포함하지 않는다.

다만, 지도 학습은 주어진 데이터에 정답 Label이 있지만, 비지도 학습은 정답 Label이 주어지지 않는다는 점에서 차이가 있다. 

 

3) Imitation Learning

  • 포함하는 것 : Optimization, Generalization, Delayed consequences
  • 포함하지 않는 것 : Exploration

Imitation Learning (모방 학습) 이란, 다른 Intelligent Agent의 행동을 보고 그것을 따라하면서 학습하는 것이다. 다른 객체의 행동을 따라하고 그에 대한 결과를 관찰하면서, World가 어떻게 구성되어있는지를 이해하며 어떻게 행동해야 할 지 학습해 나간다. RL과 비슷하지만, 다른 객체의 도움을 받으며 학습이 이루어지기 때문에 직접 Exploration을 하지 않아도 된다는 점이 다르다. 즉, 강화학습을 지도학습 쪽으로 변형시킨 것이라고 할 수 있다.

모방학습의 한계 중 하나는, 다른 객체의 행동을 따라하다가 모방해보지 않은 새로운 상황을 마주쳤을 때 어떻게 해야할 지 모른다는 점이다. 이 문제는 모방학습과 강화학습을 결합해서 해결할 수 있을 것이라고 기대한다. 그렇기에 강화학습+모방학습 분야는 아주 전도유망..!

 

 

 

 

 

 

Ⅱ. Introduction to Sequential Decision making under uncertainty

# Sequential Decision Making # Markov Assumption # Markov Decision Process # MDP # POMDP

 

1. Sequential Decision Making 이란?

(ppt. 37)

 

  • Agent : 행동을 취함으로써 World에 어떤 영향을 준다.
  • World : 영향을 받은 World는 그 상태에 대한 Observation을 제공하고, 또한 그에 대한 Reward를 준다.

 

Sequential Decision Making이란 위와 같은 Closed Loop에서 Agent와 World가 서로에게 영향을 주면서 연속적인 결정을 만들어 나가는 것을 말한다. 여기서의 최종 목적은 Agent가 받을 기대 보상을 최대화 하는 것이다. 여기서 '기대' 라고 표현하는 것은, Agent는 최대 보상을 얻으려 노력하지만, World는 확률적이고 예측하기 어렵기 때문에 모든 결정이 항상 정답이 아닐 수 있음을 나타낸다.

여기서 한 가지 중요한 포인트는, Agent는 항상 '지금 당장 받을 수 있는 보상'과 '먼 미래에 받을 수 있는 보상' 두 가지를 함께 고려해서 결정을 내려야 한다는 점이다. 만약 먼 미래에 더 큰 보상을 받고자 한다면, 지금 당장은 어느 정도 희생을 해야 할 수 있다. 

 

 

 

2. Examples of Sequential Decision Making

(ppt. 38-42)

1) Web Advertising

  • Goal : 고객들이 광고를 클릭하는 횟수를 최대화 하는 것
  • Action from agent : 노출할 광고를 고르는 것
  • Observation from world : 고객이 광고를 보는 시간, 클릭 횟수 등
  • Reward : 광고를 한 번 클릭할 때마다 +1

 

2) Robot Unloading Dishwasher

  • Goal : 카운터에 닦아야 할 dish들이 없도록 유지하는 것
  • Action from agent : joint를 움직여 dish를 닦는 것
  • Observation from world : 주방의 카메라 화면 등
  • Reward : 카운터에 dish가 없으면 +1
    (but, 이 때 보상이 너무 빠르다면 접시를 너무 자주 치우거나 아예 날려버릴 수도(..ㅋㅋㅋ) 있으므로 약간의 지연된 보상을 설계해야 할 필요 있음)

 

3) Blood Pressure Control

  • Goal : 혈압을 정상치가 되도록 적당히 낮추거나 높여서 유지하는 것
  • Action from agent : 운동 또는 약 등을 처방하는 것
  • Observation from world : 환자의 혈압 상태, 그 외의 관련 건강 상태 등
  • Reward : 혈압이 정상치로 돌아온다면 +1, 부작용이 있거나 혈압 상태가 안 좋다면 -1

 

4) Artificial Tutor

  • Goal : 학생이 어떤 개념을 이해하도록 하는 것 ex.) 덧셈, 뺄셈 등
  • Action from agent : teaching activity 를 고르는 것 ex.) 학생에게 낼 문제를 고르는 것
  • Observation from world : 학생이 문제를 푼 결과 (맞았는지, 틀렸는지)
  • Reward : 학생이 문제를 맞으면 +1, 틀리면 -1

 

Q. 여기서, 일반적으로 받아들여지는 '덧셈을 배우는 것이 뺄셈을 배우는 것보다 쉽다'는 가정을 둬보자. 이 때, 무슨 일이 일어날까?

A. Agent는 아마 쉬운 덧셈 문제만을 출제해서 학생이 계속 맞도록 할 것이다. 

 

이렇게, Agent가 받는 보상 체계에 허점이 있어서 더 쉬운 보상을 많이 받게 되는 경우를 "Reward Hacking" 이라고 한다. 즉, 보상 체계가 얼마나 정교하게 짜여있냐에 따라 Agent가 학습하는 양과 질이 결정될 수 있다. 그러므로 좋은 학습을 위해서는 좋은 보상 체계가 필요하다.

 

 

3. Sequential Decision Process (in Discrete time) 

(ppt. 43-46)

1) Agent & World

World가 일정한 time step t로 나누어 Descrete하게 설정한다.

각 time step 때마다 Agent는 action a를, world는 observation o와 reward r을 돌려준다. 그 o와 r을 바탕으로 Agent는 새로운 action을 수행한다. 

 

2) History 

History란, 과거에 받은 action과 observation의 총 집합이다. Agent는 과거의 History를 바탕으로 새로운 action을 결정한다. 

 

3) State

반면, State는 상태를 말하는 것으로, 일반적으로 History에 대한 부산물로 본다. 즉, State는 History의 함수이다. 지금까지의 History가 있었고, 그에 따라 Agent가 특정 행동을 해서 지금의 State가 결정되었다는 관점이다. 

 

여기서 헷갈리지 말아야 할 점은, State와 Observation은 다르다는 점이다. Observation은 말 그대로 현재 관찰되는 상황 그 자체이고, StateAgent가 결정을 내릴 때 사용되는 상황 전체로, 문제 정의를 어떻게 하냐에 따라 달라질 수 있다. 예를 들어 현재 관찰되는 Observation만을 State로 설정할 수도 있고, 때로는 현재의 Observation 뿐만아니라 과거 Observation까지 포함해서 Agent가 더 많은 정보를 가지고 결정을 내리도록 할 수도 있다. 

 

보통 State에는 다음 두 가지가 있다.

  • World State

이는 'Real World'의 State를 말한다. 마치 사람의 두 눈은 정해진 각도만 볼 수 있고, 뒤통수의 상황은 분명 존재하지만 인식할 수 없는 것처럼 보통 Agent는 'Real World' 전부를 알 수 없다. 즉, 제한되어 있다. 하지만, 또한 'Real World'의 모든 정보는 Agent가 결정을 내리는 데에 필요 없을 수도 있다. 

  • Agent State

이것이 Agent가 진짜로 인식하는 State이다. 즉, Agent State는 World State의 부분집합이다. Agent가 결정을 내릴 때에 실제로 사용되는 State이다. 

 

 

 

4. Markov Assumption

(ppt. 47-49)

 

Markov Assumption은 앞으로 아주 많이 다루게 될 것 중 하나로, 강화학습에서 아주 중요한 가정이다. 내용은 다음과 같다.

 

"State가 과거의 모든 History를 충분히 반영하고 있다면, 그 State만으로 미래를 예측하거나 새로운 결정을 내릴 수 있다."

 

이 가정이 중요한 이유는, 이 가정을 만족해야 Agent가 주어진 State 만으로 효과적으로 학습을 하고 있다는 것이 성립하기 때문이다. 

예를 들어, 만약 현재 관찰한 Observation 이 Markov 가정을 만족한다면, state는 observation이 되고, 지금 선택해야 하는 최적의 결정은 현재에만 의존한다. 즉, 미래는 과거와 독립적인 것이 된다. 이 경우 Agent는 이전의 모든 History를 볼 필요 없이, 현재의 Observation 만으로 최적의 결정을 내릴 수 있게 된다. 이는 연산의 비용, 메모리 사용량 등과도 연결되기 때문에 이것이 가능하냐 아니냐(현재 Observation 만으로 최적의 결정을 내릴 수 있느냐 아니냐) 는 학습이 이루어짐에 있어 중요한 문제가 된다. (물론 요즘은 하드웨어의 발달로 예전과는 조금 다른 상황이 되기는 했지만.. 여전히 시간비용, 메모리비용을 줄이는 것은 큰 이슈다.)

 

이를 수식으로 나타내면 다음과 같다.

 

즉, Markov 가정이 성립한다면 t시간(현재)의 state와 현재 취한 action으로 결정된 t+1시간의 state는 모든 History와 action으로 결정된 state와 같다. 현재의 State가 History를 충분히 반영하고 있기 때문이다. 이렇게 될 경우 모든 History를 사용하지 않고도 현재의 State만으로 최적의 결정을 내릴 수 있다는 것이 된다. 

 

 

그렇다면, 앞서 알아본 예들이 Markov 가정을 만족하는지 다시 살펴보자. 

  • Hypertension Control

혈압을 유지해야하는 문제에서, agent의 action은 운동 또는 약 등을 처방하는 것이었다. 이 때, 이러한 action을 "현재의 혈압 수치" 만으로 결정할 수 있는가? 현재의 혈압 수치는 과거의 모든 History를 반영하는 결과물인가?

  • Website shopping

Website에서 고객이 물건을 사도록 유도하기 위해 다른 제품을 추천해야 할 때, 어떤 제품을 추천할 지를 "현재 고객이 보고 있는 물건" 만으로 결정할 수 있는가? 현재 고객이 보고 있는 물건은 이전의 모든 고객 니즈 History를 반영하는가?

 

위 두 문제들의 답은 '아니오'이다. 즉, 현재의 State만으로 미래의 State가 결정되지 않는다. 혈압의 경우 미래 혈압 수치가 오르거나 내리는 것은 단지 현재의 혈압 수치만으로 결정되는 것이 아니라 어떤 운동을 했는지, 뭘 먹었는지 등의 다양한 변수들의 영향을 받을 수 있다.

쇼핑의 경우 또한 고객이 현재 보고 있는 상품 정보만으로 고객이 추천받은 제품을 구매할 지 안할지가 결정되지 않는다. 다른 니즈가 있을 수도 있고, 웹사이트의 다른 요소 등 여러가지 요인이 있을 수 있다. 

 

 

즉, 위의 예시들은 Markov Assumption을 만족하지 않는다. 그렇다면, Markov Assumption은 왜 유명한가? 왜 중요한가?

 

State를 어떤 것으로 설정하냐에 따라 Markov 가정은 언제나 성립할 수 있기 때문이다. 예를 들어, 만약 State를 Full of History로 설정한다면 Markov는 항상 성립한다. 하지만 Full of History를 State로 사용하는 것은 앞서 말했듯 비용 상의 문제가 있을 수 있으므로, 일반적으로 현재 Observation만 사용하거나, 또는 몇 단계 이전까지의 데이터만 State로 설정한다. State에 얼만큼의 정보를 담아야 충분하냐는 문제마다 달라질 수 있다. 

 

 

 

 

5. Markov Decision Process (MDP)

(ppt. 50-52)

1) Full Observability: MDP

MDP는 Agent가 모든 상황을 다 관찰할 수 있는 경우이다. 즉, Agent State와 World State가 같다.

서로 놓을 수 있는 경우의 수를 모두 알고 있는 바둑과 같은 상황이 해당한다. 이 때의 State는 현재 관찰되는 observation만으로 설정하여도 괜찮다. 

 

2) Partial Observability: POMDP

POMDP는 Agent가 관찰할 수 없는 부분이 있는 경우이다. Agent State는 World State보다 작다. 대부분의 문제가 POMDP이다. 

내 카드는 알고 있지만, 상대방의 카드는 알 수 없는 포커와 같은 상황이나, 너무 변수가 많아서 전부 다 알 수 없는 Health Care 등의 경우가 이에 해당한다. 이 때의 State는 현재 Observation 만으로 부족할 수 있으므로, 보다 많은 정보를 State에 포함시킨다. 비용의 문제가 없다면 Full of History를 사용할 수도 있다. 

 

 

 

6. Types of Sequential Decision Processes

(ppt. 53-55)

1) Bandits

밴딧 문제는 가장 간단한 Sequential Decision Process 중 하나이다. 밴딧 손잡이를 내리는 action은 그 다음번 결정에 전혀 영향을 주지 않는다. Markov 가정의 관점으로 봤을 때, 현재 Observation 자체가 결정을 위한 모든 조건을 포함하고 있는 State가 된다. 과거의 결정들은 State와 전혀 관계가 없다.

이와 같은 다른 예 중 하나는 Website Advertising이다. 첫 번째 고객이 클릭한 광고의 종류와 횟수는 두 번째 고객이 광고를 클릭하는 데에 거의 영향을 주지 않기 때문이다. 

 

2) MDPs and POMDPs

이 두 가지는 현재 취하는 action이 그 이후의 State와 action에 영향을 준다. 즉, State의 범위를 설정할 때 이전의 action들이 world에 영향을 준 점을 감안해서 설정해야 한다. 만약 현재의 Observation만을 State로 설정하면 결정을 내리는 데에 정보가 부족할 수 있다. 

 

3) How the World Changes

World가 변해가는 것도 Sequential Decision들의 과정으로 볼 수 있는데, 여기에는 두 가지가 있을 수 있다. 

  • Deterministic

어떤 action을 취했을 때, 그에 따른 결과는 단 한가지이다. 그 action으로 인해 결정되는 State, Observation, Reward 모두 한 가지만 존재한다. Robotics나 Control 과 같은 경우에 해당한다. 

  • Stochastic

특정 State에서 어떤 action을 취했을 때 어떤 결과가 나올지가 확률적이다. 보통의 현실 문제들이 모두 이에 해당한다. 훨씬 복잡하고, 많은 잠재적인 변수들이 있기 때문에 같은 결정을 내려도 나올 수 있는 결과의 경우의 수가 다양하다. 

 

 

 

 

 

 

Ⅲ. Further about RL Algorithm

# Algorithm Components # Types of RL Agents # Exploration # Exploitation

 

1. RL Algorithm Components

(ppt. 57-63)

 

여기에서는 RL을 구성하는 개념들을 다음의 Mars Rover 문제로 하나씩 알아본다. 

 

Figure: Mars Rover Image: NASA/JPL-Caltech

Mars Rover 문제는 화성에 도착한 로봇이 미지의 환경을 탐사하는 문제이다. 문제를 단순화해서, 로봇은 위와 같은 7개의 State를 가질 수 있다고 가정한다. 로봇은 각 State를 오른쪽 또는 왼쪽, 두 가지 선택지 중 하나를 선택해서 이동할 수 있다. 실제로 S1에는 +1의 보상이 있고, S7에는 +7의 보상이, 나머지에는 0의 보상이 있다.

 

이 예제를 통해 알아볼 강화학습의 개념은 Model, Policy, Value의 세 가지이다. 

 

1) Model

Agent가 어떤 action을 하냐에 따라 World가 어떻게 바뀔지에 대한 예측 결과를 출력하는 함수로, 다음 두 가지가 대표적이다. 

  • Transition / Dynamics Model : Agent의 다음 State를 예측 

 

  • Reward Model : 그 순간의 즉각 보상을 예측

 

Mars Rover 문제에서는 다음과 같이 보상 체계를 설계했다고 해보자. 

 

Mars Rover Reward Model

 

위에서 확인했던 진짜 Reward의 상태와 다르기 때문에 위의 보상 체계는 틀렸다. 이처럼 여러 경우에 모두 탐험해보기 전에는 진짜 보상을 알 수 없고, 가정을 해야하기 때문에 틀린 보상 체계를 설계할 수 있다. 하지만 틀린 보상 체계라고 하더라도 여전히 많은 경우에 유용하게 쓰일 수 있다. 

 

2) Policy

정책 π는 Agent가 어떻게 action을 취할지를 결정한다. 달리 말하면, 정책은 State를 입력받으면 그 입력값에 따른 action을 출력하는 함수라고 볼 수 있다. 

 

정책은 action이 결정되는 방식에 따라 두 가지로 나뉜다. 

  • Deterministic Policy : 입력된 s에 따른 출력값, action이 단 하나로 결정된다. 

 

  • Stochastic Policy :  s일 때 a를 선택할 확률값을 계산한다. 즉, 정책은 각 확률에 대한 확률분포라고 할 수 있다. 

 

Mars Rover 문제의 정책은 다음과 같이 설정할 수 있다. (좋은 정책같아 보이진 않지만..) 

 

Mars Rover Policy

 

즉, 이를 식으로 나타내면 다음과 같을 것이다. 

이 때, 이 정책은 Deterministic인가, Stochastic인가? 

어떤 상태가 주어졌을 때 action이 단 하나로 결정되므로 Deterministic이라고 할 수 있다. 

 

3) Value

Value는 현재 상태에서 받을 수 있을 것이라고 기대되는 보상의 총합이다. 현재 보상만 고려하는 것이 아니라, 미래의 모든 보상까지 모두 고려해 합산한 값이다. 즉, "Waiting" 의 개념을 포함한다고 할 수 있다. 미래에 가치를 두어서 그것을 얻기 위해 기다린다는 뜻..!

 

여기서 gamma는 Discount Factor로 0~1 사이의 값을 갖는데, 미래의 보상에 대한 비중을 얼마나 줄 것이냐를 결정한다. 만약 gamma가 0이라면 미래 보상은 전혀 고려하지 않는 것이고, gamma가 커질수록 미래 보상에 더 큰 가중치를 주는 것이다. 

가치함수는 현재의 상태가 얼마나 좋은지/나쁜지를 알려준다. 특정 상태의 가치가 높으면 그 상태는 좋은 상태, 즉 더 큰 보상을 받을 수 있는 상태라고 할 수 있다. 

 

 

 

2. Types of RL Agents

(ppt. 64-65)

 

강화학습에서 사용되는 Agent는 다음 두 가지가 있다. 

 

1) Model Based Agent

Model Based Agent는 World가 어떻게 굴러가는지를 직접적으로 표현한다. Model이 정책, 가치함수 등을 포함하고 있다면 명시된 정책 함수나 가치 함수는 없을 수 있다. 그렇기에 특정 State에 대한 Policy 또는 Value를 알기 위해서는 항상 추가적인 연산이 필요하다.

 

2) Model Free Agent

명시된 가치함수와 정책함수가 존재한다. Model은 없다. 

 

여기서, '명시된 (explicit)' 의 의미는, State가 주어졌을 때 즉각적으로 그 state에 대한 value, policy 등을 알 수 있다는 것을 말한다. 즉, 추가적인 연산 없이 State만으로 Value와 Policy를 알 수 있는 것 (ex. state에 대한 정책/가치가 표로 이미 정해져 있는 경우 등) 을 뜻한다.

 

정책, 모델, 가치함수의 관계를 그림으로 표현하면 다음과 같다. (아직 저것들이 전부 뭔지 정확히는 모르겠지만.... 더 듣다보면 알겠쥐?ㅎ-ㅎ)

 

Figure: Figure from David Silver's RL course

 

 

 

3. Key Challenges in Learning to Make Sequences of Good Decisions

(ppt. 66-69)

 

Planning과 Reinforcement Learning을 다시 한 번 비교해보자.

 

1) AI Planning

  • World가 어떻게 구성되어 있고 Rule이 무엇인지 알고 시작한다.
  • 하지만, 여전히 높은 보상을 받기 위해서는 어떤 결정을 해야 하는지 학습해야 한다. 
  • 그러나 학습 과정에서 World를 탐험하는 과정은 필요없다. 그저 여러 선택지 중 가장 좋다고 판단된 선택지를 선택할 뿐이다.
  • 달리 말하면, World와의 Interaction(상호작용)은 필요없다. 그저 연산을 통해 High Reward를 보장하는 선택지를 결정한다.
  • ex.) 모든 룰을 알고 있고, 모든 패도 오픈되어 있는 게임의 경우
  • Agent는 그저 눈 앞에 보이는 상황을 모두 분석하고 계산해서 최적의 수를 놓기만 하면 된다. 다이나믹 프로그래밍으로든, 트리 서치로든,,

 

2) Reinforcement Learning

  • 반면, 강화학습의 Agent는 처음에 World가 어떻게 굴러가는지 알지 못한다. 
  • 따라서 처음에 아주 많은 탐색을 통해 World를 하나씩 이해해 나가야 한다. 어디에 무엇이 있고, 어떤 행동을 하면 어떤 결과가 나오는지.
  • 경험과 탐험을 통해 Agent는 차근차근 Policy를 만들어나간다. 
  • 여기서 한 가지 더 고려해야 하는 것은, Agent는 "어떤 action이 가장 best action인지"를 학습해야 할 뿐만 아니라,
  • "더 많은 정보를 얻기 위해서는 어떤 action을 취해야 하는지" 이다.
  • 더 큰 보상을 얻는 것도 목적이지만, 학습 초기에는 World에 대한 정보 자체가 너무 없기 때문에 World를 이해하는 것이 우선이기 때문
  • ex.) 룰을 알지 못하고 진행하는 게임의 경우
  • Agent는 게임을 진행하면서 최적의 수도 찾아야 하지만, 일단 처음에는 어떤 수든 놓아 보면서 게임 자체를 이해해야 한다. 
  • 여러 Exploration을 거쳐 게임을 이해하고 난 후 점점 최적의 수를 잘 찾게 될 수 있다. 

 

 

 

4. Exploration and Exploitation

(ppt. 70-72)

 

더 좋은 학습을 하기 위해서는 한 가지에만 빠지지도, 학습한 것을 놓치지도  말아야 한다. 이 두가지를 구분하면 다음과  같다. 

  • Exploration : 새로운 것에 대한 탐험. 이전에 시도해보지 못한 것에 더 좋은 것이 있을 수 있다는 기대감에 시도한다. 폭넓게 학습하려면 필수적인 요소이다. 
  • Exploitation : 이전의 경험에 대한 활용. 이전에 학습 과정에서 경험했던 것 중 좋은 결과를 냈던 action을 재활용한다. 손실을 최소화 할 수 있다. 

 

 

 


고작 1강이 이만큼이라니...............