인공지능/강화학습

강화학습에서의 함수 근사(Function Approximation in Reinforcement Learning)

hjjummy 2024. 12. 8. 18:38

1. 강화학습에서의 함수 근사(Function Approximation)

Part I → Part II

  • 왜 함수 근사가 필요할까?
    • 상태 공간이 너무 크거나 무한대라서 모든 상태를 기억하거나 계산할 수 없음.
    • 과거 데이터를 기반으로 "비슷한 상황"에서 유사한 결과를 추정해야 함.
  • 핵심은 경험을 일반화해서 새로운 상태에서도 예측을 잘 하는 것임.

함수 근사란?

  • 기존 강화학습 방법에 머신러닝의 일반화 기법을 추가한 것.
  • 원하는 값을 대략적으로 계산하는 데 도움을 줌.

2. 값 함수(Value Function) 근사

값 함수란?

  • 어떤 상태에서 얻을 수 있는 미래 보상의 예상값을 계산하는 함수임.

업데이트 방식

  • 상태 ss의 값(예: 점수)을 조정하여 실제 값(target)에 점점 가까워지도록 만듦.
  • 대표적인 방법:
    • 몬테카를로(Monte Carlo): 여러 번 시도해 평균값으로 계산.
    • TD(0): 현재 보상 + 다음 상태의 예상값을 사용.
    • n-step TD: nn단계 이후의 보상까지 고려.

3. 예측 목표(Prediction Objective)

  • VE(Mean Squared Value Error): 잘못 예측한 정도를 측정하는 기준.
    • 예를 들어, "실제값과 내가 예측한 값이 얼마나 차이 나는지"를 숫자로 나타냄.
    • 상태를 방문할 확률에 따라 더 자주 나타나는 상태를 중요하게 생각함.

4. 확률적 경사 하강법(Stochastic Gradient Descent)

경사 하강법이란?

  • 데이터를 조금씩 학습하면서 예측값을 개선해 나가는 방법임.
  • "실제값과 내가 예측한 값의 차이"를 줄이는 방향으로 값을 업데이트함.

상태 묶음(State Aggregation)

  • 비슷한 상태들을 하나로 묶어 같은 값을 사용해 계산을 단순화함.

5. 선형 방법(Linear Methods)

선형 근사란?

  • 값 함수가 간단한 수식으로 표현됨:
    • v(s,w)=w1⋅x1(s)+w2⋅x2(s)+…v(s, w) = w_1 \cdot x_1(s) + w_2 \cdot x_2(s) + \dots
    • 여기서 x(s)x(s)는 상태를 숫자로 나타낸 것임.
  • 장점: 계산이 빠르고 결과가 안정적임.
  • 단점: 복잡한 상황을 제대로 표현하지 못할 수 있음.

TD(0) 알고리즘

  • 매 순간 보상과 다음 상태를 사용해 값을 조금씩 수정함.
  • 예: “점수 10점 예측했는데 12점 받았다면, 다음엔 더 높게 예측해야지.”

6. 특징 설계(Feature Construction)

특징이란?

  • 상태를 설명하는 숫자들임. 예를 들어:
    • 위치, 속도, 각도 같은 상태의 특성을 숫자로 표현.

다양한 방법

  • 다항식 특징(Polynomial Basis): 상태의 숫자를 제곱하거나 곱해서 더 풍부하게 만듦.
  • 푸리에 특징(Fourier Basis): 사인, 코사인 함수로 상태를 표현.
  • 코스 코딩(Coarse Coding): 상태를 여러 겹치는 범위로 나눠 단순화.
  • 타일 코딩(Tile Coding): 상태를 겹치는 격자로 나눠 효율적으로 표현.

7. 비선형 방법(Nonlinear Methods)

인공신경망(Artificial Neural Networks)

  • 간단한 수식으로 해결되지 않는 문제를 풀기 위해 사용.
  • 예: 아주 복잡한 패턴을 학습하거나 예측할 때.

문제점

  • 너무 많은 데이터를 필요로 하고, 잘못하면 과적합(overfitting)이 발생함.
  • 딥러닝은 학습 시간이 오래 걸릴 수 있음.

8. 심화 학습(On-policy Learning)

주요 기법

  • 최소제곱 TD(Least-Squares TD): 값을 더 정확히 계산하는 방법.
  • 메모리 기반 방법: 과거 데이터를 저장해서 학습에 활용.
  • 커널 기반 방법: 데이터를 더 잘 분리해서 학습.

'인공지능 > 강화학습' 카테고리의 다른 글

Ch. 12 Eligibility Traces  (1) 2024.12.09
Ch. 11 Off-policy Methods with Approximation  (0) 2024.12.09
Ch. 10 On-policy Control with Approximation  (1) 2024.12.09
Multi-Armed Bandits (MAB)  (4) 2024.09.04