일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- 데이터분석
- redux
- JavaScript
- Ros
- pandas
- ReactNative
- 클론코딩
- 머신러닝
- selenium
- 리액트네이티브
- React
- TeachagleMachine
- python
- kaggle
- 강화학습 기초
- 사이드프로젝트
- 전국국밥
- 강화학습
- GYM
- clone coding
- 조코딩
- App
- 앱개발
- FirebaseV9
- Reinforcement Learning
- coding
- 딥러닝
- expo
- 카트폴
- Instagrame clone
- Today
- Total
qcoding
[강화학습-3] 정책과 가치함수 본문
3. 정책과 가치함수 (Policy & Value Function)
정책은 “무엇을 할 것인가”를, 가치함수는 “얼마나 좋은가”를 수치로 표현합니다.
둘은 마치 나침반과 지도처럼 상호 보완적이며, 벨만 방정식으로 단단히 엮여 있습니다.
3-1. 정책(Policy) 개념
종류 | 기호 | 정의 | 특징 |
---|---|---|---|
결정론적 정책 | $\mu : \mathcal{S}\!\to\!\mathcal{A}$ | 상태 $s$가 주어지면 항상 하나의 행동 $a=\mu(s)$ 선택 | 간결·추론 쉬움 탐험 부족 경우 많음 |
확률적 정책 | $\pi(a\mid s)$ | 상태 $s$에서 행동 $a$를 선택할 확률 | 탐험·불확실성 표현 용이 표현·학습 자유도↑ |
$$\pi(a\mid s)\;\ge 0,\qquad\sum_{a\in\mathcal{A}}\pi(a\mid s)=1$$
실습에서 흔히 사용하는 ε-탐욕(ϵ-greedy) 정책은 두 세계를 절충합니다. $\,\epsilon$ 확률로 임의 탐험, $1-\epsilon$ 확률로 가치가 가장 큰 행동을 택합니다.
def epsilon_greedy(state, q_values, epsilon=0.1):
if np.random.rand() < epsilon: # 탐험
return np.random.choice(actions)
else: # 활용
return actions[np.argmax(q_values[state])]
3-2. 가치함수(Value Function)의 두 얼굴
- 상태가치함수 (State-Value)
$$V_\pi(s)=\mathbb{E}_\pi\!\Bigl[\,G_t \;\big|\; S_t=s\Bigr]$$ → 정책 $\pi$를 따를 때 “상태 $s$가 얼마나 좋은가” - 행동가치함수 (Action-Value)
$$Q_\pi(s,a)=\mathbb{E}_\pi\!\Bigl[\,G_t \;\big|\; S_t=s,\,A_t=a\Bigr]$$ → 정책 $\pi$를 따르되 첫 스텝에서 $a$를 택했을 때의 장기 기대 보상
해석 관점 | $V_\pi(s)$ | $Q_\pi(s,a)$ |
---|---|---|
“내 위치가 얼마나 유망한가?” | ⭕ | ❌ |
“특정 행동의 장기 효과는?” | ❌ | ⭕ |
정책 개선에 주로 쓰이는 형태 | $\arg\max_{a} Q_\pi(s,a)$ 활용 | 직접 활용 가능 |
주의 : $Q_\pi$만 알면 $V_\pi(s)=\sum_a \pi(a\mid s)Q_\pi(s,a)$ 로 즉시 계산되지만, 반대로 $V_\pi$만으로는 $Q_\pi$를 복원할 수 없습니다.
3-3. 벨만 기대(Bellman Expectation) 방정식
“가치는 한 걸음 앞을 내다본 뒤, 다시 가치를 참조하여 계산된다.”
■ 상태가치 버전
$$V_\pi(s) =\sum_{a}\pi(a\mid s) \sum_{s',r} P(s',r\mid s,a)\,[\,r + \gamma V_\pi(s')\,].$$
■ 행동가치 버전
$$Q_\pi(s,a) =\sum_{s',r} P(s',r\mid s,a)\,[\,r + \gamma \underbrace{\sum_{a'}\pi(a'\mid s')Q_\pi(s',a')}_{V_\pi(s')} ].$$
- 선형 연립(고정점) 형태 : $V_\pi$·$Q_\pi$는 벡터 방정식 $x = \mathcal{T}_\pi x$ 의 해(고정점)입니다.
- 수렴 보장 : $\gamma<1$이면 수축 사상(contraction) $\Rightarrow$ 반복 적용으로 유일 고정점 수렴.
- 학습 알고리즘 기반 : TD(0), SARSA, Q-learning 등은 이 식의 몬테카를로/표본 기반 근사치 업데이트에 불과합니다.
3-4. 선행 지식 체크리스트
필요 개념 | 간단 설명 | 추천 복습 |
---|---|---|
MDP 요소 | $\langle\mathcal{S},\mathcal{A},P,R,\gamma\rangle$ 구조와 마르코프 성질 | 본 시리즈 2-1 섹션 |
할인 누적보상 $G_t$ | $G_t = \sum_{k=0}^{\infty}\gamma^k R_{t+1+k}$ | 2-2 섹션 |
조건부 기댓값 | $\mathbb{E}[X\mid Y]$ 의 정의와 선형성 | 확률·통계 기본 |
수축 사상 (Banach) | 반복적 함수 적용 → 유일 고정점 수렴 | 동적 계획법(DP) 교재 |
3-5. 마무리 & 다음 편 예고
- 정책은 행동 규칙, 가치함수는 행동 규칙의 좋음을 수치화한다.
- 벨만 기대 방정식은 두 개념을 재귀적으로 연결하여 계산·학습의 길을 터준다.
- 다음 단계는 정책 평가 ↔ 정책 개선을 번갈아 수행하는 정적 계획법(DP) 입니다.
다음 글 : 가치 반복 & 정책 반복을 Gridworld에 적용해 “손으로” 최적 정책을 구해봅니다. 코드를 통해 벨만 방정식이 실제로 어떻게 풀리는지 함께 확인해 보세요!
참고 자료
- Sutton & Barto, Reinforcement Learning: An Introduction, Ch. 3 – 4
- Richard Bellman, Dynamic Programming, 1957
- David Silver, RL Course Lecture 3 – Planning & Learning
'머신러닝 딥러닝' 카테고리의 다른 글
[강화학습-6] 시간차 학습 (Temporal-Difference, TD) (0) | 2025.05.28 |
---|---|
[강화학습-5] 몬테카를로 방법 (Monte Carlo Methods) (0) | 2025.05.28 |
[강화학습-2] 마르코프 결정 과정(MDP) (0) | 2025.05.28 |
[강화학습-1] 강화학습이란? (1) | 2025.05.28 |
[window & 아나콘다 & 텐서플로 GPU] 설치하는 방법 (1) | 2024.01.21 |