-
Value Function실험실/RL 2018. 7. 30. 16:24
agent의 state 또는 취하는 action에 대해 평가하는 작업이 필요하다. (how good ?)
이것을 value function이라 하고 미래의 reward, 더 정확하게는 expected reutrn을 의미한다.
이 expected return은 agent가 어떤 action을 취하느냐에 따라 달라지므로 value function은 필연적으로 특정 policy와 관련지어 생각해야 한다.
사실 agent가 하는 행동에 대한 평가는 지금 당장 내릴 수 없는 경우가 많다. 장기나 바둑을 둘때 지금 둔 착석의 최종 평가는 게임의 승리 여부이다. 그러므로 value function을 정의하는 것이 매우 중요하다.
state-value function
state에서 state로의 상태 변화에 따른 state-value에 관심을 가진다.
policy
를 따르는 상태 s의 value는
로 표현하고, 아래와 같이 정의된
를 state-value function for policy
라고 한다.
The value function can be decomposed into two parts :
- immediate reward
- discounted value of successor state
action-value function
state와 state-action pair가 번갈아 나타나는 다음과 같은 하나의 episode를 생각해 보자.
여기서는 state에서 state로의 상태 변화에 따른 state-value에 관심을 기울이기 보다는 state-action pair에서 다음 state-action pair로의 전이를 고려해 보자. 이것은 동일한 Markov chain에 대한 다른 시각으로 관찰하는 것이다.
agent가 policy
를 따라 state s에서 action a를 취할 때 얻을 수 있는 value를 정의할 수 있으며, 정의된
를 action-value function for policy
라고 한다.
두개의 value function은 경험에 의해 값이 예측된다.
예를들어 agent가 policy
를 따라 어느 상태에서 경험적으로 얻을 수 있는 실제 return 값을 평균낸 값이라고 할 수 있다. 그 경험이 무한대에 가까워 지면 실제 값이 될 것이다. action-value에 대해서도 마찬가지로 추론할 수 있다.
※ random sample의 return값의 평균을 이용하여 예측하는 방법을 Monte Carlo method라고 한다.
Bellman equation
Reinforcement Learning에 사용되는 value function의 기본적 특징은 recursive relationship(순환 참조)을 만족한다는 것이다. 주어진 policy
와 state s에서 다음과 같은 관계를 만족한다.
맨 마지막 식을 보면 모든 a, s’, r에 대하여 확률값(P)을 weight로 사용하여 return값을 가중평균내는 것과 같은 의미이다.
이 식을
에 관한 Bellman equation 이라고 한다. 이 식은 현재 state의 value 값과 후속 state의 value 값과의 관계를 표현한 식이다.
이 관계를 도식적으로 표현한 것을 backup diagram이라고 한다. 강학학습의 핵심이 되는 update 또는 backup operation을 도식적으로 표현한다. 이것은 알고리즘을 간단히 도식적으로 표현할 때 매우 유용하게 사용된다.
여기서, (a)는 state-value function인
를 나타내고, (b)는 action-value function인
에 대한 backup diagram이다.
'실험실 > RL' 카테고리의 다른 글
03-2. Monte Carlo (MC) 코드 (0) 2018.07.29 02. Value Iteration (0) 2018.07.29 01. Policy Iteration (0) 2018.07.29 - immediate reward