2025.06.29 - [Data & Research] - [Reinforcement Learning] Table of Contents
Actor-Critic은 정책 기반 방법의 높은 분산 문제를 해결하기 위해 탄생한, 정책 기반 학습과 가치 기반 학습을 결합한 하이브리드 알고리즘입니다.
1. Actor-Critic의 탄생 배경: REINFORCE의 한계
정책 경사도(Policy Gradient)에 기반한 REINFORCE 알고리즘의 업데이트 규칙은 다음과 같았습니다.
\[ \theta \leftarrow \theta + \alpha G_t \nabla_{\theta} \log \pi_{\theta}(A_t|S_t) \]
이 식의 가장 큰 문제는, 업데이트의 크기와 방향을 결정하는 가중치로 몬테카를로 리턴 \(G_t\)를 사용한다는 점입니다. 이전에서 언급한 바와 같이 \(G_t\)는 에피소드 전체의 랜덤성에 영향을 받아 분산이 매우 크고, 이는 학습을 불안정하게 만듭니다.
여기서 액터-크리틱의 핵심 아이디어가 등장합니다. "변동성이 큰 실제 리턴 샘플 \(G_t\) 대신, 더 안정적인 '가치 함수 추정치'를 사용하면 어떨까?" 즉, \(G_t\)라는 노이즈 낀 평가를, TD 학습처럼 안정적인 가치 함수로 대체하는 것입니다.
2. Actor-Critic의 기반 이론
액터-크리틱은 이름처럼 'Actor'와 'Critic'라는 두 개의 네트워크(또는 함수)로 구성됩니다.
- 액터 (Actor), \(\pi_{\theta}(a|s)\): 정책(Policy)을 직접 학습합니다. 현재 상태를 보고 어떤 행동을 할지 결정하는 역할을 합니다. 파라미터 \(\theta\)로 표현되며, 정책 경사도를 통해 업데이트됩니다.
- 크리틱 (Critic), \(Q_{\phi}(s,a)\) 또는 \(V_{\phi}(s)\): 가치 함수(Value Function)를 학습합니다. 액터가 한 행동이 얼마나 좋았는지를 '비평'하고 평가하는 역할을 합니다. 파라미터 \(\phi\)로 표현되며, TD 학습을 통해 업데이트됩니다.
학습 과정
- (Actor의 행동) 현재 상태 \(S_t\)에서 액터의 정책 \(\pi_{\theta}\)에 따라 행동 \(A_t\)를 선택하여 수행합니다.
- (환경의 피드백) 행동 결과로 보상 \(R_{t+1}\)과 다음 상태 \(S_{t+1}\)을 관찰합니다.
- (Critic의 평가) 크리틱은 이 경험 \((S_t, A_t, R_{t+1}, S_{t+1})\)을 바탕으로 'TD 오차' \(\delta_t\)를 계산합니다. TD 오차는 "실제 얻은 가치"와 "내가 예측한 가치"의 차이를 의미합니다.
\[ \delta_t = R_{t+1} + \gamma V_{\phi}(S_{t+1}) - V_{\phi}(S_t) \] - (Critic의 학습) 크리틱은 이 TD 오차 \(\delta_t\)를 줄이는 방향으로 자신의 파라미터 \(\phi\)를 업데이트합니다. (더 정확한 비평가가 되기 위함)
- (Actor의 학습) 액터는 크리틱이 계산한 TD 오차 \(\delta_t\)를 REINFORCE의 리턴 \(G_t\) 대신 사용합니다. \(\delta_t\)는 분산이 낮은 좋은 평가 신호입니다.
\[ \theta \leftarrow \theta + \alpha \nabla_{\theta} \log \pi_{\theta}(A_t|S_t) \cdot \delta_t \] 만약 \(\delta_t\)가 양수이면(예상보다 행동이 좋았음), 그 행동의 확률을 높이는 방향으로 업데이트되고, 음수이면(예상보다 행동이 나빴음) 확률을 낮추는 방향으로 업데이트됩니다.
3. 다양한 액터-크리틱 알고리즘
정책 경사도 정리 \( \nabla J(\theta) = \mathbb{E}_{\pi} [\nabla \log \pi \cdot Q^{\pi}] \) 에서, \(Q^{\pi}\)를 무엇으로 근사하는지에 따라 다양한 액터-크리틱 알고리즘이 파생됩니다.
- Q Actor-Critic: \(Q^{\pi}(S_t, A_t)\)를 함수 근사 모델 \(Q_{\phi}(S_t, A_t)\)로 직접 근사합니다.
- Advantage Actor-Critic: 베이스라인을 도입하여, \(Q^{\pi}(S_t, A_t)\) 대신 어드밴티지 함수 \(A_{\phi}(S_t, A_t) = Q_{\phi}(S_t,A_t) - V_{\psi}(S_t)\)로 근사합니다. 분산을 더 효과적으로 줄일 수 있습니다. (A2C/A3C가 여기에 속함)
- TD Actor-Critic: 어드밴티지 함수의 추정치로 TD 오차 \(\delta_t = R_{t+1} + \gamma V_{\phi}(S_{t+1}) - V_{\phi}(S_t)\)를 사용합니다. 가장 널리 쓰이는 형태 중 하나입니다.
'Data & Research' 카테고리의 다른 글
[Reinforcement Learning] The Cliff Walking Problem (4) | 2025.07.01 |
---|---|
[Reinforcement Learning] Table of Contents (0) | 2025.06.29 |
[Reinforcement Learning] Off-policy Gradient (0) | 2025.06.29 |
[Reinforcement Learning] Rethinking Policy Gradient (0) | 2025.06.28 |
[Reinforcement Learning] REINFORCE (2) | 2025.06.27 |