강화학습(Reinforcement Learning)/David Silver 강화학습 강의

Lecture 1. 강화학습 개요 (Introduction to Reinforcement Learning)

DongJin Jeong 2020. 6. 11. 19:44

머신러닝(Machine Learning)의 종류

  • 지도학습 (Supervised Learning)
  • 비지도학습 (Unsupervised Learning)
  • 강화학습 (Reinforcement Learning)

강화학습(Reinforcement Learning)만의 특이점

  • 지도자(Superviser)가 존재하지 않고, 단지 보상(Reward)만 존재한다.

  • 행동에 대한 피드백이 즉각적이지 않고, 지연될 수 있다.

  • 시간(또는 스텝)이 매우 중요한 역할을 한다. (Sequential, i.i.d Data)

    i.i.d (independent identically distributed) 란 각각의 Random Variable들이 독립적이며 동일한 확률 분포를 가지는 것을 뜻한다.

  • 에이전트의 행동이 이후에 받을 데이터에 영향을 끼친다.

용어 정리

Rewards (보상)

  • Reward(또는 R(t))는 피드백을 스칼라로 나타낸 값이다.
  • 보상은 시간 t에서 얼마나 에이전트가 잘 하고 있는지를 나타낸다.
  • 에이전트의 목표는 누적 보상(cumulative reward)을 최대화(maximize)하는 것이다.

RL(Reinforcement Learning)은 기본적으로 Reward hypothesis에 기반한다.

정의 (Reward hypothesis)

모든 목표는 누적 보상의 기댓값(expected cumulative reward)을 최대화 하는 것으로 표현할 수 있다.


Sequantial Decision Making (순차적 의사 결정)

  • 순차적 의사 결정의 목표는 미래의 Total Reward를 최대화하는 행동(Action)들을 고르는 것이다.
  • 행동들은 장기적인 결과를 가져올 수 있다. (즉, 즉각적인 결과로 표현되지 않을 수 있다.)
  • 보상은 정체될 수 있다.
  • 미래의 더 큰 보상을 위해 즉각적인 보상을 희생하는 것이 더 나은 선택일 수도 있다는 것이 항상 고려되야만 한다.

Agent와 Environment

각 시간(또는 스텝) t마다 에이전트(Agent)는

  • Receive Observation : O(t)
  • Receive Scalar Reward : R(t)
  • Executes Action : A(t)

환경(Environment)은

  • Receive Action : A(t)
  • Emits Observation : O(t+1)
  • Emits Scalar Reward : R(t+1)

한다고 정의 할 수 있다.

Agent와 Environment의 관계


히스토리(History)와 상태(State)

히스토리(History)란 Observation, Actions, Rewards의 시퀀스(Sequence)이다.

$$H_t = O_1 , R_1 , A_1 , ... , O_t , R_t , A_t$$

상태(State)다음의 행동을 결정할 때 사용하는 정보이다.
조금 더 공식적으로 말하면, 상태(State)는 히스토리에 대한 함수라고 할 수 있다.
$$ S_t = f(H_t)$$

Information State(또는 Markov State)는 히스토리로부터 유용한 모든 정보들을 포함하는 것을 뜻한다.

정의 (State is Markov)
$$\text{ A state }S_t \text{ is Markov}\text{ if and only if } \mathbb{P}[S_{t+1} \mid S_{t} ] = \mathbb{P}[S_{t+1} \mid S_{1}, S_{2}, ..., S_{t}] $$

상태가 Markov하다는 것은 미래가 과거에 대해 독립적이라고 할 수 있다.


Fully Observable Environment와 Partially Observable Environment

Fully Observable Partially Observable
Environment의 State를 에이전트가 볼 수 있는 환경. 에이전트가 간접적으로만 Environment를 관측할 수 있는 환경.
Markov Decision Process(MDP)가 쓰임. Partially Observable Markov Decision Process(POMDP)가 쓰임.

에이전트(Agent)의 주 구성요소

에이전트는 다음으로 구성된다.

  • 정책 (Policy)
  • 가치함수 (Value Function)
  • 모델 (Model)

정책 (Policy)

에이전트(Agent)의 행동방식을 뜻한다.
정책에는 결정론적 정책(Deterministic Policy)와 확률적 정책(Stochastic Policy)가 있으며, 수식은 다음과 같다.

$$\text{ Deterministic Policy : } a=\pi(s) \\ \text{ } \\ \text{ Stochastic Policy : } \pi(a\mid s)=\mathbb{P}[A_t=a \mid S_t=s]$$


가치 함수 (Value Function)

미래의 보상(Rewards)에 대한 예측값.
상태(State)의 좋음과 나쁨을 판단할 때 사용되며, Value Function의 값을 기반으로 행동(Action)들 중 하나가 선택된다.
$$v_\pi(s) = \mathbb{E}[R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + ... \mid S_t = s]$$


모델 (Model)

모델(Model)을 통해 Environment가 다음 시간(또는 스텝)에 어떻게 반응할지 예측한다.

P는 상태 변환 확률(State Transition Probability)을 나타낸다.
R은 다음에 즉시 받을 보상(immediate reward)을 나타낸다.
$$P_{s s'}^a = \mathbb{P}[S_{t+1} = s' \mid S_{t} = s, A_t=a] \\ \text{ } \\ R_{s}^a = \mathbb{E}[R_{t+1} \mid S_{t} = s, A_t=a]$$


에이전트(Agent)의 분류

에이전트의 분류는 다음과 같다.

Value Function 존재 Policy 존재
Value Based O X
Policy Based X O
Actor Critic O O
Model 존재 (+ Policy and/or Value Function exists.)
Model Free O
Model Based X

Exploration과 Exploitation

강화학습에서 Exploitation은 현재 주어진 정보 내에서 최선의 선택을 하는 것이며, Exploration은 주어진 정보를 늘리기 위해 새로운 시도를 해보는 것이다.

식당을 선택하는 문제
Exploitation : 아는 식당 중에서 가장 좋아하는 곳을 선택함.
Exploration : 새로운 식당을 시도함.

Exploration과 Exploitation 은 Trade-off 관계이다.


Prediction 문제와 Control 문제

강화학습에서 Prediction 문제는 주어진 정책(Policy)하에서 미래를 예측하는 것을 뜻하며 즉, Value Function을 학습하는 것을 뜻한다.
Control 문제는 미래를 최적화(Optimize)하는 것을 뜻하며, Policy를 학습시키는 것을 뜻한다.