1. 개요[편집]
액터는 연기를 하고, 크리틱은 평점을 매긴다. 문제는 평론가도 학습 중이라는 것.
액터-크리틱(actor-critic)은 행동을 고르는 정책 (액터)와 그 정책의 가치함수 (크리틱)를 동시에 학습시키는 강화 학습 알고리즘 계열이다. 액터는 정책경사로 갱신되고, 그 경사식에 들어갈 “이 행동이 얼마나 좋았는가”라는 스칼라 신호를 크리틱이 시간차 학습으로 만들어 공급한다.
이 문서는 두 축의 결합 자체에 한정한다. 정책을 왜 직접 파라미터화하는지는 정책경사, 부트스트랩 갱신의 수렴 이론은 시간차 학습 문서를 보면 된다. 여기서 다룰 것은 “그 둘을 붙였을 때 무엇이 좋아지고 무엇이 망가지는가”다. 오늘날 연속 제어를 다루는 심층 강화 학습 알고리즘(PPO, SAC, TD3)은 거의 전부 이 틀 위에 서 있다.
2. 왜 붙이는가 — 분산과 편향의 거래[편집]
순수 정책경사인 REINFORCE는 에피소드가 끝난 뒤 실제 반환값 을 그대로 쓴다. 이 추정량은 불편(unbiased)이지만, 한 에피소드 전체의 확률적 요동이 전부 에 누적되므로 분산이 흉악하게 커진다. 에피소드가 길수록, 감가율 가 1에 가까울수록 더하다.1
반대로 크리틱의 부트스트랩 추정 는 한 스텝의 잡음만 담으므로 분산이 작다. 대신 가 참값 가 아니면 그 오차가 그대로 경사 방향의 편향이 된다. 액터-크리틱은 이 거래를 명시적으로 받아들인 설계다.
기준선(baseline)만 빼는 REINFORCE-with-baseline과 헷갈리기 쉬운데, 둘은 다르다. 기준선은 를 그대로 두고 를 빼기만 하므로 여전히 불편이다. 크리틱을 부트스트랩 대상으로 쓰는 순간부터 편향이 들어온다.
3. 어드밴티지와 TD 오차[편집]
정책 경사 정리는 다음 형태로 일반화된다.
여기서 자리에는 , , 그리고 어드밴티지
가 모두 들어갈 수 있다. 어드밴티지는 “그 상태의 평균보다 이 행동이 얼마나 나은가”이므로, 상태 자체가 좋아서 생기는 공통 항이 제거돼 분산이 가장 작다.
핵심은 TD 오차가 어드밴티지의 불편 추정이라는 사실이다. 참 가치함수 에 대해
의 조건부 기댓값을 취하면 가 된다. 즉 를 따로 학습하지 않고 하나만 있으면 어드밴티지를 뽑을 수 있다. 그래서 온라인 액터-크리틱의 갱신은 다음 두 줄로 끝난다.
같은 가 액터의 방향과 크리틱의 오차 신호를 겸한다는 것이 이 알고리즘의 미학이다. 단, 위 불편성은 가 참값일 때의 이야기고, 실제로는 의 오차만큼 편향이 남는다.
4. 수렴 — 2-시간척도[편집]
액터와 크리틱이 서로를 표적으로 삼고 동시에 움직이면 학습이 굴러떨어질 수 있다. 고전적 해법은 2-시간척도(two-timescale) 확률근사다. 크리틱의 학습률 를 액터의 보다 크게 두어
을 만족시키면, 크리틱 입장에서 액터는 거의 정지한 것처럼 보이고 액터 입장에서 크리틱은 이미 수렴한 것처럼 보인다. 이 조건 아래 선형 함수근사 크리틱을 쓰는 액터-크리틱의 수렴이 증명돼 있다(Konda–Tsitsiklis, 2000). 한 가지 더 중요한 이론적 장치는 적합 함수근사(compatible function approximation)로, 를 만족하도록 크리틱 특징을 잡으면 근사 를 써도 경사가 편향되지 않는다는 결과다.2
5. GAE — λ로 저울 눈금 조절하기[편집]
하나만 쓰면 분산은 최소지만 편향은 최대다. 반대로 몬테카를로 어드밴티지 는 편향이 최소지만 분산은 최대. 그 사이를 연속적으로 훑는 것이 일반화 어드밴티지 추정(GAE)이다.
이면 , 이면 몬테카를로 어드밴티지로 정확히 환원된다. 실무에서는 가 거의 국룰이고, 는 문제의 유효 지평선으로 정한다. 형태가 -반환과 적격 흔적의 전방 관점과 같다는 것도 우연이 아니다.
6. 알고리즘 계보[편집]
| 알고리즘 | 정책 | 핵심 아이디어 |
|---|---|---|
| A3C | 확률적 | 비동기 병렬 워커로 표본 상관을 깨뜨림(리플레이 버퍼 대체) |
| A2C | 확률적 | A3C의 동기·배치 버전. 대개 더 안정적이고 GPU 효율이 좋음 |
| TRPO | 확률적 | KL 신뢰영역 제약 아래 단조 개선 보장 |
| PPO | 확률적 | 클리핑 대리목적으로 신뢰영역을 1차 근사 |
| DPG/DDPG | 결정적 | 결정적 정책 경사 + 리플레이 버퍼 + 표적망 |
| TD3 | 결정적 | 쌍둥이 크리틱 최솟값, 지연 정책 갱신, 표적 정책 평활화 |
| SAC | 확률적 | 최대 엔트로피 목적, 재파라미터화, 온도 자동 조정 |
결정적 정책 경사(DPG)는 확률적 정책의 기댓값 적분을 하나의 행동 로 축약한다.
행동 공간 차원이 커도 적분이 필요 없어 연속 제어에 강하지만, 탐험을 정책 밖에서(잡음 주입으로) 넣어야 하고 오프-정책이라 발산 위험이 있다. TD3는 DDPG의 과대추정 편향을 쌍둥이 크리틱의 최솟값으로 눌러 이 문제를 실용 수준까지 끌어내렸다.
SAC는 목적함수 자체를 바꾼다.
엔트로피 보상 가 정책이 성급하게 결정론으로 붕괴하는 것을 막아준다. 자세한 계보는 최대 엔트로피 강화 학습 참고.
PPO의 클리핑 대리목적은 에 대해
로, 가 표준이다. 2차 미분도 켤레경사도 필요 없이 신뢰 영역 정책 최적화의 효과 대부분을 가져간다는 점에서 사실상 업계 기본값이 됐다.3
7. 크리틱은 정확히 무엇을 배우는가[편집]
크리틱의 표적을 무엇으로 두느냐가 알고리즘 성격을 다시 한 번 가른다.
- 1-스텝 TD 표적 — 분산 최소, 편향 최대. 표적이 자기 자신의 추정에 의존하므로 심층 근사에서는 표적망(target network)이나 폴리악 평균으로 표적을 굳혀 주지 않으면 진동한다.
- -스텝 표적 — A2C/A3C가 정도로 쓰는 기본형. GAE는 이 스펙트럼을 지수가중으로 합친 것과 같다.
- 크리틱 — DDPG·TD3·SAC처럼 행동을 인자로 받는 를 배우면 리플레이 버퍼에서 오프-정책으로 학습할 수 있다. 대신 부트스트랩·함수근사·오프-정책이 한자리에 모이는 죽음의 삼중주에 정면으로 노출된다.
또 하나 놓치기 쉬운 점: 액터가 온-정책 경사를 쓰는 한, 크리틱이 오프-정책 데이터로 학습되면 두 갱신의 분포가 어긋난다. PPO가 옛 정책 표본을 몇 에폭 재사용하면서도 버티는 이유는 클리핑이 그 어긋남의 크기를 확률비 로 직접 제한하기 때문이다.
8. 실무에서 터지는 지점[편집]
- 크리틱이 느리면 액터가 헛짚는다. 학습률 비를 거꾸로 잡는 것(액터가 더 빠름)은 발산의 지름길이다. 2-시간척도 조건은 이론적 장식이 아니다.
- 어드밴티지 정규화. 배치 단위로 를 평균 0·분산 1로 표준화하는 것이 사실상 필수다. 보상 스케일이 알고리즘 하이퍼파라미터를 잡아먹는 것을 막아준다.
- 엔트로피 보너스. 없으면 정책이 몇천 스텝 만에 결정론으로 붕괴해 탐험이 죽는다.
- 공유 네트워크의 함정. 액터와 크리틱이 몸통을 공유하면 파라미터는 아끼지만, 가치 손실의 스케일이 정책 손실을 압도해 표현이 가치 회귀 쪽으로 끌려간다. 손실 가중치 를 반드시 조정한다.
- 재현성. 같은 코드·같은 하이퍼파라미터로 시드만 바꿔도 학습곡선이 갈리는 일이 흔하다. 최소 5~10개 시드의 분포를 보고 판단하는 것이 이 바닥의 검증 및 확인이다.4
9. 관련 문서[편집]
10. Footnotes[편집]
-
그래서 REINFORCE만 돌려본 사람은 강화 학습을 “학습률을 아무리 낮춰도 학습곡선이 술 취한 것처럼 흔들리는 분야”로 기억하게 된다. 분산 감소 기법은 선택이 아니라 생존 조건이다. ↩
-
적합 조건을 만족하는 크리틱 특징은 결국 자체다. 이론적으로는 아름다운데, 심층 신경망 정책에 그대로 적용하면 특징 차원이 파라미터 수와 같아진다. 그래서 실무 구현은 이 조건을 대놓고 무시하고 그냥 MLP 크리틱을 쓴다. ↩
-
TRPO 논문의 단조 개선 보장은 신뢰영역 반경을 이론값대로 잡았을 때의 이야기고, 실제 구현은 그 값이 너무 보수적이라 휴리스틱으로 키워 쓴다. 즉 실무의 TRPO도 이미 “보장”에서 한 발 나와 있다. ↩
-
2018년 무렵 “Deep RL that Matters” 계열의 재현성 논문들이 이 문제를 정면으로 지적하면서, 학습곡선 한 줄만 그려 넣은 논문은 리뷰에서 살아남기 어려워졌다. 시드 하나로 SOTA를 주장하는 것은 격자 하나로 수렴을 주장하는 것과 같다. ↩