Q-Table을 이용한 Q-Learning의 한계
• 작은 크기(4 x 4) 맵이 있는 FrozenLake의 경우
Q 테이블은 64개의 항목이 필요합니다. (4 x 4 position x 4 action)
• 문제가 더 큰 경우에는 어떻게 합니까?
가치 함수 근사
• 지금까지 조회 테이블로 가치 함수를 표현했습니다.
모든 상태 s에는 항목 V(s)가 있습니다.
또는 모든 상태-동작 쌍 s,a에는 항목 Q(s,a)가 있습니다.
• 대형 MDP의 문제:
메모리에 저장할 상태 및/또는 작업이 너무 많습니다.
각 상태의 가치를 개별적으로 학습하기에는 너무 느립니다.
• 대규모 MDP를 위한 솔루션:
함수 근사로 가치 함수 추정
본 상태에서 보이지 않는 상태로 일반화
MC 또는 TD 학습을 사용하여 매개변수 w 업데이트
어떤 함수 근사치를 사용할 것인가?
• 많은 함수 근사치가 있습니다.
특징의 선형 컴비네이션
신경망(뉴럴 네트워크)
의사결정 트리
가장 가까운 이웃(knn)
푸리에/웨이블릿 베이스
여기서 미분 가능한 함수를 고려하면, 선형 컴비네이션과 신경망이 고려되고
또한 non-stationary, non-iid 데이터에 적합한 훈련 방법이 필요합니다.
경사하강법
• J(w)를 매개변수 벡터 w의 미분 가능한 함수라고 하자.
• J(w)의 기울기를 다음과 같이 정의합니다.
• J(w)의 로컬 최소값을 찾으려면
• -ve 기울기 방향으로 w 조정
여기서 α는 단계 크기 매개변수입니다.
값 기능 약. 확률적 경사하강법으로
• 목표: 근사값 fn 𝑣ො(s,w) 사이의 평균 제곱 오차를 최소화하는 매개변수 벡터 w 찾기
참값 fn vπ
(에스)
• 경사 하강법은 로컬 최소값을 찾습니다.
• 확률적 경사 하강법은 경사를 샘플링합니다.
• 예상 업데이트는 전체 그래디언트 업데이트와 동일합니다.
특징 벡터
• 특징 벡터로 상태 표현
• 예를 들어:
랜드마크에서 로봇까지의 거리
주식 시장의 동향
체스의 말 및 폰 구성
선형 값 함수 근사
• 기능의 선형 조합으로 가치 함수를 나타냅니다.
• 목적 함수는 매개변수 w에서 2차입니다.
• 확률적 경사하강법은 전역 최적값에 수렴합니다.
• 업데이트 규칙이 특히 간단합니다.
업데이트 = 단계 크기 × 예측 오차 × 특성 값
테이블 조회 기능
• 테이블 조회는 선형 값 함수 근사의 특별한 경우입니다.
• 테이블 조회 기능 사용
• 매개변수 벡터 w는 각 개별 상태의 값을 제공합니다.
증분 예측 알고리즘
• 참값 함수를 가정함 𝑣𝜋
(𝑠)감독님께서 주신
• 그러나 RL에는 감독자가 없고 보상만 있습니다.
• 실제로는 𝑣𝜋를 대상으로 대체합니다.
(𝑠)
MC의 목표는 수익률 𝐺t
TD(0)의 경우 대상은 TD 대상입니다.
TD(λ)의 경우 목표는 λ-return Gtλ
값 함수 근사를 사용한 몬테카를로
• 리턴 GT
참값 vπ의 편향되지 않은 노이즈 샘플입니다.
(상태 St)
• 따라서 지도 학습을 "훈련 데이터"에 적용할 수 있습니다.
• 예를 들어 선형 Monte-Carlo 정책 평가 사용
• Monte-Carlo 평가는 지역 최적값으로 수렴합니다.
• 비선형 값 함수 근사를 사용하는 경우에도
값 함수 근사를 사용한 TD 학습
• TD 타겟 Rt+1+γ𝑣ො(St+1,w)는 참값 vπ의 편향된 샘플입니다.
(성
)
• 여전히 지도 학습을 "훈련 데이터"에 적용할 수 있습니다.
• 예를 들어 선형 TD(0) 사용
• 선형 TD(0)은 전역 최적으로 수렴(닫힘)합니다.
값 함수 근사가 있는 TD(λ)
• λ-반환 Gt
λ
또한 참값 vπ의 편향된 샘플입니다.
(에스)
• 지도 학습을 "훈련 데이터"에 다시 적용할 수 있습니다.
• 전방 보기 선형 TD(λ)
• 후방 보기 선형 TD(λ)
값 함수 근사로 제어
• 정책 평가
대략적인 정책 평가,
• 정책 개선
𝜖 - 탐욕스러운 정책 개선
조치 값 함수 근사
• 액션-값 함수 근사화
• 대략적인 조치 값 𝑞ො 𝑆, 𝐴, 𝒘과 실제 조치 값 사이의 평균 제곱 오차 최소화
𝑞𝜋
(S,𝐴)
• 확률적 경사하강법 사용
선형 작용 값 함수 근사
• 특징 벡터로 상태 및 동작 표현
• 기능의 선형 결합으로 행동 가치 함수 표현
• 확률적 경사하강법 업데이트
'인공지능(ML)' 카테고리의 다른 글
혼동 행렬의 개념 (0) | 2023.09.16 |
---|---|
머신러닝 모델 평가하기 (0) | 2023.09.16 |
머신러닝의 유형 (1) | 2023.09.16 |
머신러닝이란? (0) | 2023.09.16 |
Deep Q-Network (0) | 2022.11.06 |