[ 1. Reinforcement Learning Intro ]

Contents

  1. What is Reinforcement Learning?
  2. Reinforcement Learning Components
    1. RL의 구성요소 & 용어
    2. Summary
    3. Algorithm
  3. Value function & Q-Value function
    1. Value function
    2. Q-value function
  4. Kinds of Reinforcement Learning


1. What is Reinforcement Learning?

한 줄 요약 : 주어진 상황이 있을 때, 가장 좋은 행동은?

( RL = “가장 좋은 행동” 찾기 위한 학습 )

  • 1 ) Supervised Learning : Labeled data -> prediction & classification

  • 2 ) Unsupervised Learning : Unlabeled data -> clustering, generative model

  • 3 ) REINFORCEMENT LEARNING : Decision process, Reward System

    \(\rightarrow\) “주어진 상황(State)에서, 받을 수 있는 보상(Reward)를 극대화 하는 행동(Action)을 선택하도록!”


RL의 key idea

  • 인간의 심리와 매우 유사! ( 세계를 경험하면서 학습을 한다 )
  • 잘하면 (+) 보상, 못하면 (-) 벌점
  • DRL (Deep Reinforcement Learning, 심층 강화학습) = RL + DL


Properties of RL

  • 1) 정답을 모른다! (Unsupervsied)
    • 대신, 특정 행동에 대한 reward & 다음 state가 주어짐
  • 2) 현재의 의사결정이, 미래의 의사결정에 영향을 미친다!
  • 3) 문제의 구조를 모른다
    • 처음부터 행동에 대한 모든 보상들을 알고 시작하는 것이 아니다.
  • 4) Delayed Reward
    • 받게되는 reward의 가치는 시간에 따라 다를 수 있다.


RL이 다른 ML 기법들과 다른 점은?

  • 1 ) No Supervisor ! ( Loss Function이 없다 )

    \(\rightarrow\) 오직 “Reward의 크기”에 따라 선택의 옳고 그름이 판단된다

  • 2 ) Delayed Feedback !

    \(\rightarrow\) 해당 선택이 옳은지는 바로 판단이 내려지지 않는다!

    ( 지금 한 순간이 아니라, 보다 “장기적인 관점에서 reward를 판단”하기 때문에 )


2. Reinforcement Learning Components

(1) RL의 구성요소 & 용어



  • 1 ) Agent (에이전트) : 상태를 관찰, 행동을 선택하는 주체
  • agent의 3요소 : 정책/가치/모델
  • 2 ) Environment (환경) : Agent가 속해 있는 상황

( 단지 현재 속해있는 시점의 상황 뿐만 아니라, 전체적인 상황을 의미한다 )

  • 3 ) State (상태) : 현재 Agent가 속해 있는 상태의 정보

  • 4 ) Action (행동, \(A\)) : 현재 state에서 Agent가 하는 행동

  • 5 ) Reward (보상, \(R\) ) : Agent가 action을 했을 때 받게 되는 보상 (장기적인 관점)

  • 6 ) Policy (정책, \(\pi\) ) : 주어진 환경에서 어떠한 action을 해야한다는 행동 요령


(2) Summary

  • Agent(에이전트)가 Environment(환경)에서 자신의 state(상태)를 관찰하고, 특정 기준(“가치 함수”)에 따라 행동을 선택한다.
  • 여기서 “가치 함수”는, 현재 상태에서 미래에 받을 것으로 기대되는 Reward의 (discounted) 합을 의미한다
  • 그리고 선택한 행동을 수행하면, 다음 state으로 넘어감과 함께 Reward를 받는다.
  • 여기서 받는 Reward를 통해, Agent는 가지고 있는 정보를 update한다”


(3) Algorithm

매 time step \(t\) 마다,

  • 1 ) agent는 액션 (action)을 한다 (\(A_t\) )
  • 2 ) 행동에 따른 결과를 확인 (observation)한다
  • 3 ) 이 행동에 따른 보상 (reward)을 받는다 ( \(R_t\) )


3. Value function & Q-Value function

Value function vs Q-value function?

  • Value function : 액션(action) 고려 X

  • Q-value function : 액션(action) 고려 O


(1) Value function ( 액션 고려 X )

여기서의 ‘value’는, 단기적인 보상(Reward)만을 이야기하는 것이 아니다.

“장기적인 관점”에서, 미래에 받게 될 보상까지 고려한 reward를 의미한다.

여기서, 미래에 받을 reward를 할인율(\(\gamma\))를 통해 discount한다.


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

  • \(V_{\pi}(s) = E[R(s_0)+\gamma\;R(s_1)+ \gamma^2\;R(s_2)+... \mid s_0=s, \pi]\).
  • 해석 : “현재 상태 \(s\)에서 정책 \(\pi\) 에 따라 행동 했을 때 기대되는 보상”


(2) Q-Value function ( 액션 고려 O )

Value function이 “(1) 현재의 상태과 (2) 정책”이 주어졌을 때의 Reward 관련 함수라면,

Q-value function은 “(1) 현재의 상태, (2) 정책 그리고 (3) 현재의 상태에서 취할 행동”이 주어졌을 때의 Reward 관련된 함수이다.


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

  • \(Q_\pi (s,a) = E[R(s_0,a_0)+\gamma R(s_1,a_1) +\gamma^2 R(s_2,a_2)+....\mid s_0=s,a_0=a,\pi ]\).


4. Kinds of Reinforcement Learning

figure2

.

  • 1 ) Model based :
    • agent가 존재하는 environment를 modeling한 것
  • 2 ) Policy based agent :
    • value function 없이, 오직 policymodel만으로 구성
  • 3 ) Value based agent :
    • policy 없이, 오직 value functionmodel만으로 구성
  • 4 ) Model based agent & Model Free agent :
    • model에 대한 정보가 곧 state transition의 정보
  • 5 ) Actor Critic :
    • policy + value function + model 모두 사용


5. Summary

  1. RL = 미래까지 고려한 reward 극대화하는 policy 찾기

  2. RL의 구성 요소 : agent, environment, state, action, reward, policy

  3. Agent의 행동 순서 :

    • (1) 행동 - (2) 상태 확인 - (3) 보상 받기
  4. Value function vs Q-value function

    • Value ) 액션 고려 X ( state + policy )

      \(V_{\pi}(s) = E[R(s_0)+\gamma\;R(s_1)+ \gamma^2\;R(s_2)+... \mid s_0=s, \pi]\).

    • Q-value ) 액션 고려 O ( state + policy + action )

      \(Q_\pi (s,a) = E[R(s_0,a_0)+\gamma R(s_1,a_1) +....\mid s_0=s,a_0=a,\pi ]\).