전체 글(95)
-
[RL] 8. PPO: Proximal Policy Optimization
Actor-Critic은 온-정책(on-policy) 알고리즘이기 때문에, 경험 데이터를 한 번만 사용할 수 있다. 다시 말해, 재사용이 불가하다. PPO(Proximal Policy Optimization)는 이러한 한계점을 개선한 알고리즘이다. 이전에 살펴본 Actor-Critic 수식을 advantage function으로 표현하면 다음과 같다.$$\begin{matrix} \nabla_\theta J(\theta) &=& \mathbb E_{\tau \sim \pi_\theta} \left[ \sum_{t=0}^T (R_t + \gamma V_w(s_{t+1})-V_w(s_t)) \nabla_\theta \log \pi_\theta(a_t|s_t)\right] \\ &=& \mathbb E_{\..
2024.05.21 -
[RL] 7.1. Advanced Policy Gradient: A3C, A2C
심층 강화 학습 알고리즘심층 강화 학습 알고리즘은 크게 두 가지로 분류할 수 있다.첫번째, 환경 모델을 사용하는 모델 기반 기법(model-based method)두번째, 환경 모델을 사용하지 않는 모델 프리 기법(model-free method) 모델 기반 기법은 다시 환경 모델이 주어지는 경우와 환경 모델을 학습하는 경우로 나눌 수 있다.모델 프리 기법은 크게 정책 기반 기법과 가치 기반 기법, 그리고 이 둘을 모든 갖춘 기법으로 분류할 수 있다. 이번 글에서는 정책 경사법 계열의 고급 알고리즘 중 분산 학습 알고리즘인 A3C, A2C에 대해 알아볼 것이다.A3C(Asynchronous Advantage Actor-Critic)A3C의 특징은 Asynchronous 즉, '비동기'라는 점이다.여기서..
2024.05.01 -
[RL] 7. Policy Gradient method: REINFORCE, Baseline, Actor-Critic
지금까지 배운 기법(DP, MC, TD)은 모두 가치 기반 기법(value-based method)이다.가치 기반 기법은 가치 함수를 모델링하고 가치 함수를 학습한다. 그리고 가치 함수를 경유하여 정책을 얻는다.참고로, 가치 기반 기법에서는 "일반화한 정책 반복"으로 최적 정책을 찾는 경우가 많다. 이번 글에서는 정책 경사법(policy gradient method)에 기반한 다양한 알고리즘에 대해 알아볼 것이다.The simplest policy gradient method정책 경사법은 기울기를 이용하여 정책을 갱신하는 기법들의 총칭이다.우선 가장 간단한 정책 경사법을 도출해보자. DNN으로 $\pi(a|s)$ 표현우선, 정책 $\pi(a|s)$를 신경망으로 모델링한다.이때, 상태를 입력으로 받으면 모..
2024.04.30 -
[RL] 6. DQN(Deep Q Network)
지금까지는 상태와 행동의 가짓수가 적은 문제만 다뤘기 때문에, 행동 가치 함수(Q 함수)를 테이블로 관리해도 아무런 문제가 없었다.하지만 현실은 훨씬 복잡하기 때문에 Q 함수를 테이블로 관리하는 건 현실적으로 불가능하다. 해결책으로 Q 함수를 더 가벼운 함수로 근사하는 방법을 생각해볼 수 있으며, 딥러닝이 현시점 가장 유력한 후보다. 이번 글에서는 강화학습에서 가장 유명한 알고리즘인 Q 러닝과 DNN(Deep Neural Network)의 결합인 DQN (Deep Q Network)에 대해 알아볼 것이다.DNN으로 Q 함수를 표현지금까지는 Q 함수를 테이블로 Q 함수를 표현(관리)했다.이제 테이블로 표현한 Q 함수를 DNN으로 "변신"시켜보자.다시 말해, DNN으로 Q 함수를 근사해보자. 우선, DNN의..
2024.04.28 -
[RL] 5. Temporal Difference: SARSA, Q-learning
몬테카를로법을 이용하면 환경 모델 없이도 정책을 평가할 수 있다.하지만, 몬테카를로법은 에피소드의 끝에 도달한 후에야 가치 함수를 갱신할 수 있다.그렇기 때문에, 지속적 과제에서는 몬테카를로법을 사용할 수 없다. 또한 일회성 과제더라도 완료까지 시간이 꽤 걸리는 과제라면 몬테카를로법으로 가치 함수를 갱신하는데 오랜 시간이 소모되기 때문에 적합하지 않다. 이번 글에서는 환경 모델을 사용하지 않을 뿐 아니라 행동을 한 번 수행할 때마다 가치 함수를 갱신하는 TD(Temporal Difference) 기법에 대해 알아볼 것이다. TD법은 MC(Monte Carlo)법과 DP(Dynamic Programming)법을 합친 기법이다.직관적으로, TD법은 DP법처럼 추정치로 추정치를 갱신하고, MC법처럼 환경 모델..
2024.04.26 -
[RL] 4. Monte Carlo method
이전 글에서 DP 기법으로 최적 가치 함수와 최적 정책을 구해봤다.DP를 이용하려면 환경 모델을 알고 있어야 한다.하지만 안타깝게도, 현실에는 환경 모델을 알 수 없는 경우가 대부분이다. 환경 모델이 알려진 경우에는 에이전트 측에서 실제로 행동하지 않고 '상태, 행동, 보상'의 전이를 시뮬레이션할 수 있지만,이런 경우에는 에이전트가 실제로 행동을 취해 얻은 경험(상태, 행동, 보상)을 토대로 최적 가치 함수와 최적 정책을 구해야 한다. 이번 글의 목표는 에이전트가 실제로 행동을 취해 얻은 경험을 바탕으로 가치 함수를 추정하고 이를 기반으로 최적 정책을 찾는 것이다.더보기분포 모델(distribution model) vs 샘플 모델(sample model)분포 모델은 확률 분포를 표현한 모델이다. 샘플 모..
2024.04.24