ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [2025 강화학습 Recap] Chapter 7. Deep Reinforcement Learning
    AI/Reinforcement Learning 2025. 8. 10. 10:52
    728x90

     

    [2025 강화학습 Recap] Chapter 7. Deep Reinforcement Learning

     

    지금까지 우리는 가치함수를 중심으로 강화학습을 이해해왔음. 상태의 가치를 정확히 추정하고, 그를 바탕으로 최선의 행동을 선택하는 방식이었음. 하지만 잠깐, 정말로 가치함수가 필요할까? 우리의 궁극적 목표는 최적 정책을 찾는 것인데, 굳이 가치함수라는 중간 단계를 거쳐야 할까?

    때로는 더 직접적인 접근이 효과적일 수 있음. 마치 목적지에 가는 데 지도를 자세히 그리는 대신 바로 방향을 찾아가는 것처럼 말임. 특히 연속 행동 공간에서는 "어떤 행동이 얼마나 좋은가"를 모두 계산하기보다는 "어떤 행동을 선택할 확률을 높일까"를 직접 학습하는 것이 더 자연스러움.

    이것이 바로 정책 경사법(Policy Gradient)의 핵심 아이디어임. 정책을 매개변수화된 함수로 표현하고, 성능을 직접 최적화하는 방법임. 가치함수라는 우회로 대신 정책 공간에서 바로 최적해를 향해 나아가는 것.

    이 장에서는 정책을 직접 학습하는 다양한 방법들을 살펴볼 예정임. REINFORCE라는 기본적인 정책 경사 알고리즘부터 시작해서, Actor-Critic처럼 가치함수와 정책을 함께 사용하는 하이브리드 방법까지 다룰 것임. 그 과정에서 왜 정책 기반 방법이 때로는 가치 기반 방법보다 뛰어난지, 어떤 상황에서 어떤 방법을 선택해야 하는지도 명확해질 것임.

    가치에서 정책으로. 강화학습의 또 다른 차원을 탐험해보자.

     

     

     

    Chapter 7: Policy Gradient Methods

    1. Chapter 6에서 Chapter 7로: 가치에서 정책으로

    1.1 지금까지의 여정

    Value-based 접근법의 성과:
    ✅ Q-Learning, SARSA로 최적 정책 학습
    ✅ 함수 근사로 큰 상태 공간 처리
    ✅ 이론적으로 완성된 프레임워크

    하지만 남은 한계들:
    ❌ 연속 행동 공간에서의 어려움
    ❌ 확률적 정책 표현의 제약
    ❌ 가치함수라는 우회 경로의 비효율성

    1.2 새로운 질문: "정말 가치함수가 필요한가?"

    기존 접근법의 우회 경로:

    1. 환경과 상호작용
    2. 가치함수 학습 (Q(s,a) 추정)
    3. 가치함수로부터 정책 유도 (π(s) = argmax Q(s,a))

    직접적 접근법의 가능성:

    1. 환경과 상호작용
    2. 정책 직접 최적화 (π를 바로 개선)

    1.3 정책 기반 방법이 필요한 이유

    1. 연속 행동 공간 문제

    로봇 팔 제어: 관절 각도가 실수값 연속 공간
    자율주행: 핸들 각도, 가속도가 연속값
     
    • Value-based: argmax_a Q(s,a)에서 a가 무한개
    • Policy-based: π(a|s)로 연속 분포 직접 모델링

    2. 확률적 정책의 필요성

    가위바위보: 예측 가능한 결정론적 정책은 불리
    포커: 블러핑을 위한 확률적 전략 필요
     
    • Value-based: 결정론적 greedy 정책만 자연스럽게 표현
    • Policy-based: π(a|s) 확률 분포로 자연스럽게 표현

    3. 부분 관측 환경

    포커: 상대방 카드를 모르는 상황
    로봇 탐험: 센서로 일부만 관측 가능
     
    • 같은 관측에서도 다른 행동이 최적일 수 있음
    • 확률적 정책이 더 robust함

     

     

    2. 정책 매개변수화와 목적함수

    2.1 정책의 매개변수화

    기본 아이디어:

    π(a|s) → πθ(a|s)
     

    정책을 매개변수 θ로 표현되는 함수로 모델링

    연속 행동: 가우시안 정책

    πθ(a|s) = N(μθ(s), σθ²(s))
     
    • μθ(s): 평균 (신경망으로 근사)
    • σθ(s): 표준편차 (학습 가능하거나 고정)

    이산 행동: 소프트맥스 정책

    πθ(a|s) = exp(hθ(s,a)) / Σ_a' exp(hθ(s,a'))
     
    • hθ(s,a): preference function (신경망으로 근사)

     

    2.2 성능 측정: 목적함수 정의

    에피소드 환경에서의 목적함수:

    J(θ) = E[G0] = E[Σ_{t=0}^T γ^t R_{t+1}]
     

    연속 환경에서의 목적함수:

    J(θ) = Σ_s dπ(s) Σ_a πθ(a|s) R(s,a)
     
    • dπ(s): 정책 π 하에서 상태 s의 정상 분포

    목표:

    θ* = argmax_θ J(θ)
     

     

    2.3 정책 경사 정리 (Policy Gradient Theorem)

    핵심 질문: ∇θ J(θ)를 어떻게 계산할까?

    단순한 시도 (틀림):

    ∇θ J(θ) = ∇θ Σ_s dπ(s) Σ_a πθ(a|s) R(s,a)
     

    문제: dπ(s)도 θ에 의존함 (정책이 바뀌면 상태 분포도 바뀜)

    정책 경사 정리:

    ∇θ J(θ) = E[∇θ log πθ(At|St) Gt]
     

    증명 스케치:

    1. 궤적 확률을 정책과 환경 역학으로 분해
    2. 환경 역학은 θ와 무관하므로 상수 취급
    3. log-derivative trick 적용: ∇θ p = p ∇θ log p

    핵심 통찰:

    • 상태 분포의 복잡한 θ 의존성이 사라짐
    • 샘플링으로 기댓값 근사 가능
    • 환경 모델 불필요

     

     

    3. REINFORCE 알고리즘

    3.1 정책 경사 정리의 구현

    REINFORCE 업데이트 규칙:

    θ ← θ + α ∇θ log πθ(At|St) Gt
     

    구성요소:

    • ∇θ log πθ(At|St): 정책 경사 방향
    • Gt: 실제 Return (성능 신호)
    • α: 학습률

    3.2 REINFORCE 알고리즘 상세

    1. 정책 πθ 초기화
    2. 각 에피소드에 대해:
       a) 정책 πθ를 따라 궤적 생성: S0,A0,R1,S1,A1,R2,...,ST
       b) 각 시점 t에 대해:
          - Gt 계산: Σ_{k=t+1}^T γ^{k-t-1} R_k
          - θ 업데이트: θ ← θ + α γ^t ∇θ log πθ(At|St) Gt
     

    3.3 REINFORCE의 직관적 이해

    높은 Return을 받은 행동 강화:

    Gt > 0이고 클수록: θ를 ∇θ log πθ(At|St) 방향으로 크게 업데이트
    → 해당 행동의 확률 증가
     

    낮은 Return을 받은 행동 약화:

    Gt < 0이고 작을수록: θ를 -∇θ log πθ(At|St) 방향으로 업데이트  
    → 해당 행동의 확률 감소
     

     

    3.4 REINFORCE의 특징

    장점:
     Unbiased: 정확한 정책 경사 추정
     Model-free: 환경 모델 불필요
     연속 행동: 자연스럽게 처리
     확률적 정책: 직접 학습

    단점:
     High variance: Monte Carlo 특성상 변동성 큼
     Sample inefficient: 각 샘플을 한 번만 사용
     Slow convergence: 높은 분산으로 인한 느린 학습

     

    3.5 분산 문제의 심각성

    예시: 간단한 2-arm bandit

    행동 A1: 보상 100 (확률 0.1), 보상 0 (확률 0.9)
    행동 A2: 보상 1 (확률 1.0)
     

    REINFORCE 업데이트의 분산:

    • A1 선택 시: 90% 확률로 -100, 10% 확률로 +100
    • 매우 불안정한 학습 과정

     

     

    4. 분산 감소 기법들

    4.1 베이스라인 (Baseline)

    아이디어: 절대적 Return 대신 상대적 이점 사용

    θ ← θ + α ∇θ log πθ(At|St) (Gt - b(St))
     

    베이스라인의 조건:

    • θ와 무관해야 함: ∇θ b(St) = 0
    • 편향성 보존: E[∇θ log πθ(At|St) b(St)] = 0

    일반적인 베이스라인:

    1. 상수 베이스라인: b = 평균 Return
    2. 상태 가치 베이스라인: b(s) = V(s)

     

    4.2 상태 가치 베이스라인: REINFORCE with Baseline

    핵심 아이디어:

    Gt - V(St) ≈ Advantage = "평균보다 얼마나 좋은가"
     

    알고리즘:

    1. 정책 πθ와 가치함수 Vw 초기화
    2. 각 에피소드에 대해:
       a) 궤적 생성
       b) 각 시점 t에 대해:
          - 정책 업데이트: θ ← θ + α (Gt - Vw(St)) ∇θ log πθ(At|St)
          - 가치함수 업데이트: w ← w + β (Gt - Vw(St)) ∇w Vw(St)
     

    분산 감소 효과:

    • Var[Gt - V(St)] << Var[Gt]
    • V(St)가 정확할수록 분산 더 감소

     

    4.3 자연 정책 경사 (Natural Policy Gradient)

    문제: 일반 경사하강법은 매개변수 공간에서의 거리 사용

    θ_{new} = θ + α ∇θ J(θ)
     

    개선: 정책 공간에서의 거리 사용

    θ_{new} = θ + α F^{-1} ∇θ J(θ)
     
    • F: Fisher Information Matrix

    직관:

    • 매개변수 변화량이 같아도 정책 변화는 다를 수 있음
    • 정책 공간에서 일정한 크기로 업데이트

     

     

    5. Actor-Critic 방법들

    5.1 Actor-Critic의 기본 아이디어

    두 개의 함수 근사:

    • Actor: 정책 πθ(a|s) 매개변수화
    • Critic: 가치함수 Vw(s) 또는 Qw(s,a) 매개변수화

    상호 보완적 역할:

    • Actor: 정책 개선 담당
    • Critic: 성능 평가 담당

     

    5.2 One-step Actor-Critic

    TD Error를 이용한 즉시 업데이트:

    δt = Rt+1 + γVw(St+1) - Vw(St)
     

    업데이트 규칙:

    θ ← θ + α δt ∇θ log πθ(At|St)  (Actor)
    w ← w + β δt ∇w Vw(St)          (Critic)
     

    장점:
     낮은 분산: TD error가 Monte Carlo Return보다 안정적
     온라인 학습: 매 스텝 업데이트 가능
     빠른 학습: 즉시 피드백

    단점:
     편향성: Bootstrap으로 인한 bias
     초기값 의존: Critic 초기화에 민감

     

    5.3 Actor-Critic vs 기존 방법들

    vs REINFORCE:

    • REINFORCE: 높은 분산, 낮은 편향
    • Actor-Critic: 낮은 분산, 높은 편향

    vs Value-based 방법:

    • Value-based: 정책이 가치함수에 의존
    • Actor-Critic: 정책과 가치함수 독립적 학습

     

    5.4 Advanced Actor-Critic: A3C, A2C

    A3C (Asynchronous Advantage Actor-Critic):

    • 여러 에이전트가 병렬로 학습
    • 비동기적 매개변수 업데이트
    • n-step Return 사용

    A2C (Advantage Actor-Critic):

    • A3C의 동기화 버전
    • Advantage 함수 명시적 사용: A(s,a) = Q(s,a) - V(s)

     

     

     

    6. 연속 행동 공간에서의 정책 경사

    6.1 가우시안 정책의 구현

    매개변수화:

    πθ(a|s) = N(μθ(s), σ²)
     

    로그 확률 경사:

    ∇θ log πθ(a|s) = ∇θ μθ(s) · (a - μθ(s))/σ²
     

    직관:

    • 높은 Return 시: a 방향으로 μθ(s) 이동
    • 낮은 Return 시: a 반대 방향으로 μθ(s) 이동

     

    6.2 결정론적 정책 경사 (Deterministic Policy Gradient)

    아이디어: 확률적 정책 대신 결정론적 정책 사용

    πθ(s) = a  (단일 행동 출력)
     

    정책 경사:

    ∇θ J(θ) = E[∇θ πθ(s) ∇a Q(s,a)|a=πθ(s)]
     

    장점:

    • 더 효율적인 탐색
    • 연속 행동에서 자연스러운 표현

     

     

    7. 실제 구현 고려사항

    7.1 학습률 선택

    정책과 가치함수의 서로 다른 학습률:

    αθ (정책): 보통 작은 값 (0.0001~0.001)
    αw (가치함수): 상대적으로 큰 값 (0.01~0.1)
     

    이유:

    • 정책 변화는 전체 성능에 큰 영향
    • 가치함수는 상대적으로 안정적 학습 가능

    7.2 탐험 vs 활용

    정책 기반 방법의 자연스러운 탐험:

    • 확률적 정책 자체가 탐험 제공
    • 별도의 ε-greedy 불필요

    탐험 제어 방법:

    1. 엔트로피 정규화: 정책의 무작위성 유지
    2. 온도 매개변수: 소프트맥스의 뾰족함 조절
    3. 노이즈 추가: 행동에 직접 노이즈 주입

    7.3 수치적 안정성

    로그 확률의 수치적 문제:

    log πθ(a|s) → -∞ when πθ(a|s) → 0
     

    해결 방법:

    1. Clipping: 너무 작은 확률값 제한
    2. 정규화: 매개변수 범위 제한
    3. 적응적 학습률: 경사 크기에 따른 조절

     

     

    8. 정책 기반 vs 가치 기반 방법 비교

    8.1 종합적 비교표

    특성Value-basedPolicy-basedActor-Critic

    수렴성 강함 보통 보통
    샘플 효율성 높음 낮음 보통
    연속 행동 어려움 자연스러움 자연스러움
    확률적 정책 어려움 자연스러움 자연스러움
    구현 복잡도 보통 단순 복잡
    분산 낮음 높음 보통

    8.2 선택 가이드라인

    Value-based 선호 상황:

    • 이산 행동 공간
    • 샘플 효율성이 중요
    • 안정적 수렴 필요

    Policy-based 선호 상황:

    • 연속 행동 공간
    • 확률적 정책 필요
    • 부분 관측 환경

    Actor-Critic 선호 상황:

    • 두 방법의 장점 결합 필요
    • 복잡한 연속 제어 문제
    • 실시간 학습 환경

     

     

    9. 최신 발전 방향들

    9.1 Trust Region Methods

    문제: 정책 업데이트가 너무 클 때 성능 급격히 저하
    해결: 업데이트 크기를 제한하는 신뢰 영역 설정

    TRPO (Trust Region Policy Optimization):

    maximize  E[πθ_new/πθ_old · A(s,a)]
    subject to KL(πθ_old, πθ_new) ≤ δ
     

     

    9.2 Proximal Policy Optimization (PPO)

    TRPO의 단순화 버전:

    L(θ) = E[min(rt(θ)A(s,a), clip(rt(θ), 1-ε, 1+ε)A(s,a))]
     
    • rt(θ) = πθ(a|s)/πθ_old(a|s)
    • clip으로 업데이트 크기 제한

     

    9.3 Soft Actor-Critic (SAC)

    엔트로피 정규화된 목적함수:

    J(θ) = E[Σ_t γ^t (R(st,at) + αH(πθ(·|st)))]
     
    • H(π): 정책의 엔트로피
    • α: 탐험-활용 균형 매개변수

     

     

    10. Chapter 7 정리 및 다음 단계

    10.1 정책 기반 방법이 해결한 것

     연속 행동 공간: 자연스러운 매개변수화로 해결
     확률적 정책: 직접적인 확률 분포 학습
     직접 최적화: 가치함수 우회 없는 정책 개선
     이론적 기초: 정책 경사 정리로 견고한 토대

     

    10.2 남은 도전과제

     높은 분산: 여전히 샘플 효율성 문제
     수렴 보장: 함수 근사 시 안정성 이슈
     탐험 문제: 효과적인 탐험 전략 필요
     계산 효율성: 실시간 제어에서의 한계

     

    10.3 현대 강화학습에서의 위치

    Deep RL의 핵심 구성요소:

    • PPO, SAC 등 현대 알고리즘의 기초
    • OpenAI Five, AlphaStar 등 실제 성공 사례
    • 로봇 제어, 자율주행 등 실용적 응용

     

    10.4 다음 단계들

    발전 방향:

    1. Hierarchical RL: 복잡한 장기 계획 문제
    2. Multi-agent RL: 여러 에이전트 상호작용
    3. Meta-learning: 빠른 적응 능력
    4. Safe RL: 안전 제약 하에서 학습

     

     

    이 장에서 우리는 강화학습의 완전히 새로운 패러다임을 경험했음. 가치함수라는 중간 단계 없이 정책을 직접 최적화하는 방법을 배웠고, 이것이 왜 때로는 더 효과적인지 이해했음. 특히 연속 행동 공간이나 확률적 정책이 필요한 상황에서 정책 경사법의 진가를 확인할 수 있었음.
    REINFORCE의 단순함에서 시작해서 Actor-Critic의 정교함까지, 각 방법이 가진 고유한 특성과 적용 영역을 파악했음. 높은 분산이라는 정책 경사법의 고질적 문제도 베이스라인, 자연 정책 경사, Actor-Critic 등 다양한 기법으로 해결할 수 있다는 것을 보았음.
    가장 중요한 통찰은 가치 기반과 정책 기반 방법이 경쟁 관계가 아니라 상호 보완적이라는 점임. Actor-Critic 구조에서 보듯이, 두 접근법을 결합하면 각각의 장점을 살리고 단점을 보완할 수 있음. 이런 하이브리드 접근법이 현대 강화학습의 주류가 된 것도 우연이 아님.
    이제 우리는 강화학습의 거의 모든 기본 도구를 갖추었음. Tabular 방법부터 함수 근사, 가치 기반부터 정책 기반까지. 하지만 이들을 어떻게 실제 복잡한 문제에 적용할까? 어떤 상황에서 어떤 방법을 선택해야 할까? 계산 효율성과 샘플 효율성은 어떻게 개선할까?
    앞으로의 여정에서는 이런 실용적 고려사항들과 최신 발전 방향들을 다루게 될 것임. Deep Deterministic Policy Gradient(DDPG), Proximal Policy Optimization(PPO), Soft Actor-Critic(SAC) 같은 현대적 알고리즘들이 어떻게 여기서 배운 기본 원리들을 발전시켰는지 보게 될 것임.
    정책 공간에서의 직접 최적화라는 새로운 관점을 얻었음. 이제 정말로 현실 세계의 복잡한 제어 문제들에 도전할 준비가 완료되었음.

    728x90
Designed by Tistory.