강화학습 공부를 하며 중요했던 개념 중 하나인 벨만 방정식 (Bellman Equation) 에 대해 정리하였다.
Bellman Expectation Equation은 주어진 policy에 대해서, 상태 가치 함수 V와 행동 가치 함수 Q를 정의하고 계산하는데에 사용되는 식이다.
$$ V^\pi(s) = \mathbb{E}_\pi \left[ R_{t+1} + \gamma V^\pi(S_{t+1}) \mid S_t = s \right] $$
$$ Q^\pi(s, a) = \mathbb{E}_\pi \left[ R_{t+1} + \gamma Q^\pi(S_{t+1}, A_{t+1}) \mid S_t = s, A_t = a \right] $$
각 상태 혹은 행동의 가치는, 그 다음 state의 reward와 그 이후의 가치의 기대값을 합친 것과 같다는 뜻이다.
Bellman Optimality Equation은 optimal policy에 따른 V와 Q를 정의하고, 최적 정책을 찾는데에 사용되는 식이다.
$$ V^*(s) = \max_a \mathbb{E} \left[ R_{t+1} + \gamma V^*(S_{t+1}) \mid S_t = s, A_t = a \right] $$
$$ Q^*(s, a) = \mathbb{E} \left[ R_{t+1} + \gamma \max_{a'} Q^*(S_{t+1}, a') \mid S_t = s, A_t = a \right] $$
두 식의 차이점을 마음 깊이 이해하는데에는 시간이 조금 걸렸다. Expectation Equation은 주어진 정책에 대하여 기대 가치를 계산하는데에 사용되는 식이지만, Optimality Equation은 최적 정책을 찾기 위한 식이다. 따라서 주어진 환경에서 가치를 최대화하는 a를 선택하여 이후의 가치를 계산한다.
$$ Q(s, a) \leftarrow Q(s, a) + \alpha \left[ R_{t+1} + \gamma \max_{a'} Q(s', a') - Q(s, a) \right] $$
Bellman Optimality Equation을 기반으로 Q-learning을 하는 가장 기본적인 공식은 위와 같다. 더 나아가서, DQN으로 이후 진화하였다. 다음으로는 DQN 논문에 대한 리뷰를 작성하겠다.
'개발 인생 > ML' 카테고리의 다른 글
DQN 논문 (Playing Atari with Deep Reinforcement Learning) 리뷰 (0) | 2024.06.20 |
---|---|
알파제로 논문 리뷰 (0) | 2024.06.19 |
핸즈 온 머신러닝 :: 16. 강화 학습 (0) | 2020.02.02 |
핸즈 온 머신러닝 :: 15. 오토인코더 (0) | 2020.01.31 |
핸즈 온 머신러닝 :: 14. 순환 신경망 (0) | 2020.01.28 |