일반화 어드밴티지 추정 (GAE)
TD 오차를 γλ로 할인해 더하는 어드밴티지 추정 — λ 하나로 편향과 분산을 조절
먼저 알아야 할 것
다루는 내용
GAE는 1단계부터 무한 단계까지의 어드밴티지 추정량을 λ로 지수 가중 평균해, 결국 TD 오차를 γλ로 할인한 합으로 어드밴티지를 추정합니다. λ=0은 분산이 작지만 가치 함수 오차만큼 편향되고 λ=1은 편향이 없지만 분산이 큽니다. 가치 함수도 신뢰 영역 회귀로 학습하고 TRPO와 결합해 3D 이족 · 사족 로봇의 달리기와 일어서기를 학습했으며, 이후 PPO의 표준 어드밴티지 추정법이 됐습니다.
초록
정책 경사 방법은 누적 보상을 직접 최적화하고 신경망 같은 비선형 함수 근사기와 쉽게 함께 쓸 수 있어 강화학습에서 매력적인 접근입니다. 두 가지 큰 어려움은 보통 아주 많은 표본이 필요하다는 점, 그리고 들어오는 데이터가 계속 변하는데도 안정적이고 꾸준한 개선을 얻기 어렵다는 점입니다. 첫 번째 어려움은 가치 함수를 써서, 약간의 편향을 감수하는 대신 정책 경사 추정의 분산을 크게 줄이는 방식으로 다룹니다. 이를 위해 TD(λ)와 비슷한, 어드밴티지 함수의 지수 가중 추정량을 씁니다. 두 번째 어려움은 신경망으로 표현한 정책과 가치 함수 모두에 신뢰 영역 최적화 절차를 써서 다룹니다. 이 방법은 매우 어려운 3D 보행 과제에서 강력한 실험 결과를 냅니다. 시뮬레이션 이족 · 사족 로봇의 달리기 동작을 학습하고, 바닥에 누운 상태에서 이족 로봇이 일어서는 정책도 학습합니다. 손으로 설계한 정책 표현을 쓰는 기존 연구들과 달리, 이 논문의 신경망 정책은 원시 운동학 정보를 곧바로 관절 토크로 바꿉니다. 알고리즘은 완전히 모델 없이(model-free) 동작하며, 3D 이족 로봇 과제에 필요한 시뮬레이션 경험의 양은 실제 시간으로 1~2주에 해당합니다.
해설
일반화 어드밴티지 추정 (GAE)
정책 경사의 '얼마나 좋은 행동이었나'(어드밴티지)를 추정할 때, 한 걸음 TD 오차부터 끝까지의 실제 수익까지를 지수 가중 평균으로 섞는 방법입니다. 하나의 손잡이 로 편향과 분산 사이를 조절하며, 지금도 PPO 구현의 표준 어드밴티지 추정법입니다.
| 항목 | 내용 |
|---|---|
| 원제 | High-Dimensional Continuous Control Using Generalized Advantage Estimation |
| 저자 | John Schulman 외 4명 (UC 버클리) |
| 발표 | 2015 (학회 발표 2016) · ICLR · arXiv 1506.02438 |
| 트랙 · 수준 | 강화학습 · 심화 |
| 먼저 알면 좋은 것 | 정책 경사, 가치 함수 · 어드밴티지, TD 오차, TD(), TRPO |
들어가기 전에
이 해설은 아래 내용을 안다고 보고 씁니다. 처음이라면 먼저 읽고 오면 수식과 손계산을 훨씬 쉽게 따라올 수 있습니다.
- 비동기 딥 강화학습 (A3C) — 경험 재생 대신 병렬 스레드로 상관을 끊은 비동기 액터-크리틱, CPU만으로 아타리 최고 기록
- 신뢰 영역 정책 최적화 (TRPO) — 옛 정책과의 KL 발산을 δ 이하로 묶어 정책을 안전하게 개선하는 신뢰 영역 정책 최적화
한눈에 보기
- 정책 경사에서 "분산이 크다"와 "편향이 있다"가 각각 무슨 뜻이고 왜 둘이 맞바뀌는지 압니다.
- 1단계 · 2단계 · … · 무한 단계 어드밴티지 추정이 어떻게 생겼는지, 그것을 로 섞으면 왜 TD 오차의 할인 합이 되는지 직접 따라갑니다.
- 와 가 둘 다 '할인'처럼 보이지만 역할이 다르다는 점을 이해합니다.
- 가치 함수도 신뢰 영역으로 학습한다는 두 번째 아이디어와, 3D 이족 · 사족 로봇 실험 결과를 압니다.
초록 (번역)
정책 경사 방법은 누적 보상을 직접 최적화하고 신경망 같은 비선형 함수 근사기와 쉽게 함께 쓸 수 있어 강화학습에서 매력적인 접근입니다. 두 가지 큰 어려움은 보통 아주 많은 표본이 필요하다는 점, 그리고 들어오는 데이터가 계속 변하는데도 안정적이고 꾸준한 개선을 얻기 어렵다는 점입니다. 첫 번째 어려움은 가치 함수를 써서, 약간의 편향을 감수하는 대신 정책 경사 추정의 분산을 크게 줄이는 방식으로 다룹니다. 이를 위해 TD()와 비슷한, 어드밴티지 함수의 지수 가중 추정량을 씁니다. 두 번째 어려움은 신경망으로 표현한 정책과 가치 함수 모두에 신뢰 영역 최적화 절차를 써서 다룹니다. 이 방법은 매우 어려운 3D 보행 과제에서 강력한 실험 결과를 냅니다. 시뮬레이션 이족 · 사족 로봇의 달리기 동작을 학습하고, 바닥에 누운 상태에서 이족 로봇이 일어서는 정책도 학습합니다. 손으로 설계한 정책 표현을 쓰는 기존 연구들과 달리, 이 논문의 신경망 정책은 원시 운동학 정보를 곧바로 관절 토크로 바꿉니다. 알고리즘은 완전히 모델 없이(model-free) 동작하며, 3D 이족 로봇 과제에 필요한 시뮬레이션 경험의 양은 실제 시간으로 1~2주에 해당합니다.
무엇을 풀었나
강화학습의 오래된 난제는 공로 배분(credit assignment) 입니다. 지금 한 행동의 결과가 한참 뒤에야 보상으로 나타나니, 어느 행동 덕분인지 가리기 어렵습니다.
정책 경사는 기울기를 편향 없이 추정할 수 있지만, 그 추정값의 분산이 시간 길이에 따라 크게 불어납니다. 한 행동의 효과가 앞뒤의 수많은 다른 행동 효과와 뒤섞이기 때문입니다. 분산이 크면 표본이 아주 많이 필요합니다.
액터-크리틱처럼 실제 수익 대신 학습된 가치 함수를 쓰면 분산은 줄지만 편향이 생깁니다. 논문은 편향이 더 위험하다고 강조합니다. 분산은 표본을 더 모으면 줄지만, 편향은 표본이 무한해도 학습을 엉뚱한 곳(국소 최적도 아닌 곳)으로 보낼 수 있습니다.
질문은 이것입니다. "분산은 크게 줄이면서 편향은 견딜 만한 수준으로 묶는, 조절 가능한 어드밴티지 추정법이 있을까?"
핵심 아이디어
flowchart LR
A[현재 정책으로 N걸음 수집] --> B[가치 함수 V로 TD 오차 δ_t 계산]
B --> C["GAE: Â_t = Σ (γλ)^l δ_(t+l)"]
C --> D[TRPO로 정책 갱신]
D --> E[신뢰 영역 회귀로 가치 함수 갱신]
E --> A1. 정책 경사의 여러 얼굴 — 무엇을 곱할 것인가
정책 경사는 다음 꼴로 쓸 수 있습니다.
자리에는 궤적 전체 보상, 그 행동 이후 보상, 기준값을 뺀 보상, , 어드밴티지 , TD 오차 등이 들어갈 수 있습니다. 논문은 어드밴티지 가 거의 가장 낮은 분산을 준다고 설명합니다.
직관: 정책 경사의 한 걸음은 "평균보다 좋은 행동의 확률은 올리고, 나쁜 행동의 확률은 내리는 것"이어야 합니다. 어드밴티지는 정확히 "평균 대비 얼마나 나은가"를 재므로, 일 때만 그 행동의 확률이 오르게 됩니다.
2. γ는 '분산 줄이기 손잡이'
이 논문은 문제 자체를 할인 없는 총보상 최대화로 두고, 를 분산을 줄이는 알고리즘 파라미터로 해석합니다. 먼 미래 보상의 비중을 낮추면 분산이 줄지만, 그만큼 편향이 생깁니다.
-적합(γ-just) 추정량: 할인된 어드밴티지 자리에 넣어도 할인된 정책 경사 에 추가 편향을 만들지 않는 추정량을 말합니다. "어떤 의 불편 추정 − 그 행동 이전 정보만으로 만든 기준값" 꼴이면 -적합입니다.
3. TD 오차와 k단계 어드밴티지
직관: 한 걸음만 보고 "예상보다 좋았나"를 판단할 수도 있고, 열 걸음을 지켜본 뒤 판단할 수도 있습니다. 짧게 보면 추정이 덜 흔들리지만 가치 함수가 틀린 만큼 치우치고, 길게 보면 덜 치우치지만 운에 따라 크게 흔들립니다.
먼저 TD 오차(잔차)를 정의합니다.
가치 함수가 정확하다면() 이것의 기댓값이 곧 어드밴티지입니다. 이 를 개 더하면 중간 항이 서로 지워져(망원급수) 단계 추정량이 됩니다.
| 기호 | 뜻 |
|---|---|
| 번째 걸음의 TD 오차 — "한 걸음 해 보니 예상보다 얼마나 나았나" | |
| 걸음 실제 보상 + 그 뒤를 로 메운 수익 − 기준값 | |
| 끝까지의 실제 수익 − . 가치 함수 오차에 따른 편향은 없지만 분산이 큼 |
가 커질수록 가 더 많이 할인되므로 가치 함수 오차로 인한 편향이 작아집니다.
4. GAE — k단계 추정을 λ로 섞기
직관: 1단계, 2단계, 3단계 … 판단을 모두 듣되, 짧은 판단에 더 큰 무게를 주고 긴 판단일수록 무게를 배씩 줄여 평균 냅니다. 여러 전문가의 의견을 신뢰도에 따라 가중 평균하는 것과 비슷합니다(해설용 비유).
정리하면 놀랍도록 단순합니다. TD 오차를 로 할인해 더한 것입니다. 이는 가치 함수를 추정하는 TD()와 같은 구성인데, 여기서는 어드밴티지를 추정한다는 점이 다릅니다.
두 극단을 보면 의미가 분명해집니다.
| 설정 | 식 | 성질 |
|---|---|---|
| 분산이 작음. 가 틀리면 편향 | ||
| 의 정확도와 무관하게 -적합. 분산이 큼 | ||
| 그 사이 | 편향-분산 절충 |
숫자로 해 보기(해설용 예): 세 걸음 뒤 에피소드가 끝난다고 합시다. , , 보상 , 가치 추정 , 종료 상태 가치는 0입니다.
- TD 오차: , ,
- GAE:
- 비교: 이면 (한 걸음만 봄), 이면 (끝까지 봄)
가 "얼마나 먼 미래의 놀라움까지 지금 행동의 공으로 돌릴지"를 정한다는 것이 보입니다.
5. γ와 λ는 무엇이 다른가
둘 다 곱해지는 할인처럼 보이지만 역할이 다릅니다.
- 은 가치 함수가 아무리 정확해도 편향을 만듭니다. 가치 함수의 '눈금' 자체를 바꾸기 때문입니다.
- 은 가치 함수가 부정확할 때만 편향을 만듭니다.
그래서 논문은 실험에서 가장 좋은 가 가장 좋은 보다 훨씬 낮게 나온다고 보고합니다. 합리적으로 정확한 가치 함수가 있으면 가 만드는 편향은 작기 때문입니다.
6. 보상 형성(reward shaping)으로 다시 보기
직관: 원래 보상에 "도착한 상태의 가치 − 떠난 상태의 가치"를 더해 보상을 다시 빚으면, 늦게 오는 보상이 즉시 받는 신호로 바뀝니다.
보상 형성은 로 보상을 바꾸는 것인데, 이렇게 해도 어드밴티지는 변하지 않습니다. 로 두면 바뀐 보상이 바로 TD 오차 가 됩니다. 따라서 GAE는 "가치 함수로 보상을 다시 빚은 뒤, 더 가파른 할인 로 먼 지연 효과의 잡음을 잘라 낸 것"으로 해석할 수 있습니다. 가 완벽하면 행동의 효과가 모두 즉시 보상으로 옮겨지고, 근사 라도 그 시간 퍼짐을 상당히 줄여 줍니다.
7. 가치 함수도 신뢰 영역으로 학습
가치 함수는 보통 할인 수익 에 대한 회귀로 학습합니다. 논문은 최근 배치 하나에 과적합하지 않도록 이동 폭을 제한합니다.
- : 옛 가치 함수의 평균 제곱 오차. 제약은 "가치 함수를 평균 , 분산 인 가우시안으로 볼 때 평균 KL을 이하로"와 같습니다.
- 정책처럼 켤레 기울기법(가우스-뉴턴 근사 행렬 )으로 방향을 잡고 걸음을 조절합니다.
왜 이렇게 했나: 가치 함수를 한 배치에 지나치게 맞추면 TD 오차가 모두 0에 가까워지고, 그러면 정책 경사도 0이 되어 학습이 멈춥니다. 같은 이유로 논문은 정책을 먼저 옛 가치 함수로 갱신한 다음 가치 함수를 갱신합니다.
결과
실험 설정 (논문 기준)
- 정책 최적화는 TRPO, 정책 · 가치 신경망은 은닉층 3개(tanh 100 · 50 · 25 유닛).
- 이족(휴머노이드) 모델: 상태 33차원, 구동 자유도 10. 사족 모델: 상태 29차원, 구동 자유도 8. MuJoCo, 시간 간격 0.01초.
- 배치당 이족 보행 50,000걸음, 사족 보행 · 이족 일어서기 200,000걸음. 에피소드 최대 2,000걸음.
결과 요약
| 과제 | 좋은 결과가 나온 범위 | 기타 |
|---|---|---|
| 카트폴 (21개 시드 평균) | , | 선형 정책 |
| 3D 이족 보행 (9개 시드) | , | 16코어로 시행당 약 2시간 |
| 3D 사족 보행 (5개 시드) | , 일 때 가장 좋음 | 32코어로 시행당 약 4시간 |
| 3D 이족 일어서기 (5개 시드) | 가치 함수는 항상 도움, 과 1이 비슷 |
- 이족 보행은 1,000번 반복 뒤 빠르고 매끄러우며 사실상 넘어지지 않는 걸음새를 얻었습니다.
- 이 학습에 든 시뮬레이션 시간을 실제 시간으로 바꾸면 0.01초 × 50,000걸음 × 1,000배치 ≈ 5.8일입니다. 저자들은 로봇 상태를 되돌리고 파손을 막을 수 있다면 실제 로봇에서도 해 볼 만한 규모라고 봅니다.
- 사족 보행과 이족 일어서기에서는 상태와 무관한 시간 기준값만 쓴 'No VF' 조건보다 가치 함수를 쓴 조건이 나았습니다.
- 저자들은 대체로 를 0.9~0.99 사이 중간값으로 두면 가장 좋다고 정리합니다. (1단계 수익)은 편향이 너무 커 성능이 나빴습니다.
왜 중요한가 · 이후 영향
- 어드밴티지 추정의 표준이 됐습니다. PPO 논문이 바로 이 GAE를 잘린(truncated) 형태로 써서 를 계산합니다. 오늘날 대부분의 PPO 구현과 LLM용 RLHF 라이브러리도 GAE로 어드밴티지를 구합니다.
- 편향-분산 절충을 하나의 손잡이 로 다룰 수 있게 해, 실무자가 조정할 대상이 분명해졌습니다.
- 사람이 설계한 정책 구조 없이 일반 신경망으로 3D 휴머노이드 달리기 · 일어서기를 학습해, 고차원 연속 제어의 기준을 끌어올렸습니다.
한계 · 주의할 점
- 분석은 저자 스스로 '직관적이지만 비형식적'이라고 밝힙니다. 가치 함수 오차가 정책 경사 오차로 어떻게 이어지는지는 열린 문제로 남겼습니다.
- , 를 자동으로 고르는 법은 제시하지 않았습니다. 과제마다 조정이 필요합니다.
- 사족 · 일어서기 실험은 계산 비용 때문에 비교 범위가 제한적이었습니다( 고정, 두세 값만).
- 정책과 가치 함수를 한 신경망에서 공유하는 구조는 앞으로의 과제로 남겼습니다(이후 PPO 등에서 흔히 공유).
이어서 읽을 것
- 앞: 신뢰 영역 정책 최적화 (TRPO) — 이 논문이 쓰는 정책 최적화
- 앞: 비동기 딥 강화학습 (A3C) — 단계 어드밴티지를 쓰는 액터-크리틱
- 뒤: 근접 정책 최적화 (PPO) — GAE를 기본 어드밴티지 추정으로 채택
- 비교: 연속 제어를 위한 딥 강화학습 (DDPG) — 함수를 미분해 쓰는 다른 계열
용어 정리
| 용어 | 쉬운 뜻 |
|---|---|
| 공로 배분(credit assignment) | 늦게 온 보상이 어느 행동 덕분인지 가리는 문제 |
| 분산(variance) | 추정값이 표본에 따라 얼마나 흔들리는지 |
| 편향(bias) | 추정값의 평균이 참값에서 얼마나 벗어나 있는지 |
| TD 오차(잔차) | 한 걸음 해 본 결과가 가치 함수의 예상과 얼마나 다른지 |
| 망원급수(telescoping sum) | 이웃한 항이 서로 지워져 처음과 끝만 남는 합 |
| -적합 추정량 | 할인된 정책 경사를 추정할 때 추가 편향을 만들지 않는 어드밴티지 추정량 |
| 보상 형성(reward shaping) | 상태 함수의 차이를 보상에 더해 최적 정책은 그대로 두고 학습 신호를 바꾸는 것 |
| 가우스-뉴턴 근사 | 제곱 오차 목표의 헤시안을 야코비안의 곱으로 근사하는 방법 |
스스로 점검
- 과 의 GAE는 각각 무엇이 되나? — 이면 한 걸음 TD 오차 , 이면 끝까지의 할인 수익에서 를 뺀 값입니다. 앞은 분산이 작고 편향이 있고, 뒤는 편향이 없지만 분산이 큽니다.
- 와 의 편향은 어떻게 다른가? — 은 가치 함수가 정확해도 편향을 만들고, 은 가치 함수가 부정확할 때만 편향을 만듭니다. 그래서 최적 가 최적 보다 낮게 나옵니다.
- 정책보다 가치 함수를 먼저 갱신하면 왜 문제인가? — 가치 함수가 방금 모은 데이터에 과적합하면 TD 오차가 0에 가까워져 정책 경사가 사라집니다. 그래서 옛 가치 함수로 어드밴티지를 계산해 정책을 먼저 갱신합니다.
다음에 볼 것
이 글을 이해했다면 이어서 보면 좋은 항목입니다.
- 근접 정책 최적화 (PPO) — 확률비를 1±ε로 잘라 정책을 조금씩만 바꾸는, 단순하고 안정적인 정책 최적화
출처
- 원문: arxiv.org/abs/1506.02438 (2015 · John Schulman 외)
AI 원리부터 이해하기 · 강화학습 모듈
강화학습 모듈 학습
이 글은 강화학습 모듈의 학습 자료입니다. 전체 31개 자료 중 18번째입니다.
출처·원문
원문 보기요약만