https://arxiv.org/abs/1511.05952
Abstract
경험 재생(Experience Replay)은 기존에 재생 메모리에서 경험 데이터를 균등하게 샘플링한다. 해당 방법은 경험의 중요도를 고려하지 않은 문제가 발생한다. 따라서 본 논문에서는 중요한 경험을 더 자주 재생하는 경험 우선순위 재생(Prioritized Experience Replay) 프레임워크를 개발한다.
Introduction
이 논문에서는 경험 재생(Experience Replay)의 효율성과 효과를 높이기 위해, 어떤 경험 전환(Experience Transition)을 더 자주 재생할지 우선순위를 정하는 방법을 제안한다. 기존 방식에서는 모든 전환을 uniform 하게 재생했으나 본 논문에서는 전환의 중요도에 따라 재생 빈도를 조정하여 학습 효율을 극대화한다.
우선순위 재생(Prioritized Replay)은 중요도가 높은 전환을 자주 재생한다.
- TD 오류가 큰 전환
- 다양성 손실 문제 > 확률적 우선순위 (Stochastic Prioritization)로 완화
- 편향 문제 > 중요도 샘플링(Importance Sampling) 보정
PRIORITIZED REPLAY
A MOTIVATING EXAMPLE
Blind Cliffwalk 환경에서는 올바른 행동을 선택해야 다음 상태로 진행할 수 있으며, 마지막 상태에 도달했을 때 보상이 주어진다. 그러나 보상은 매우 드물게 발생하며 무작위 행동으로는 보상에 도달할 확률이 매우 낮다. ($2^{-n}$)
- uniform : 메모리에서 전환을 무작위로 재생
- oracle : 전역 손실을 최대한 줄이는 전환을 선택하여 재생
오라클 기반 에이전트는 균등 재생 에이전트보다 학습 속도가 지수적으로 빠르며 경험 재생에서 전환의 우선순위를 정하는 것이 학습 효율성을 크게 향상시킬 수 있음을 나타낸다.
PRIORITIZING WITH TD-ERROR
우선순위를 설정하는 기준으로 TD 오차(δ)를 사용한다. TD 오차는 해당 전환이 얼마나 예기치 않거나 놀라운지를 나타내며 이는 업데이트 해야할 크기가 크다는 것을 의미한다.
STOCHASTIC PRIORITIZATION
TD 오차($p_i = |\delta_i| + \epsilon$)가 낮은 전환은 오랜 시간 동안 재생되지 않을 수 있다. 따라서 확률적 샘플링을 도입하여 우선순위에 따라 샘플링 확률을 조정한다. 이로 인하여 가장 낮은 우선순위 전환도 재생될 가능성을 보장한다.
$$P(i) = \frac{p_i^\alpha}{\sum_k p_k^\alpha}$$
1. 비례 우선순위(Proportional Prioritization)
$$p_i = |\delta_i| + \epsilon$$
TD 오차의 절대값을 사용해 우선순위를 결정한다. 여기서 \(\epsilon\)은 TD 오차가 0이 될 경우 나눌 수 없기에 더한다.
2. 순위 기반 우선순위(Rank-based Prioritization)
TD 오차를 기준으로 정렬한 순위를 사용해 우선순위 결정한다.
$$p_i = \frac{1}{\text{rank}(i)}$$
ANNEALING THE BIAS
우선순위 리플레이(Prioritized Replay)는 샘플링 분포를 변화시키므로 편향이 발생한다. 이를 해결하기 위해 중요도 샘플링(Importance Sampling, IS) 가중치 $w_i$를 도입한다. 이 가중치는 비균일 한 샘플링 확률 \( P(i) \)을 보정한다.
$$w_i = \left( \frac{1}{N \cdot P(i)} \right)^\beta$$
- \( N \): 리플레이 메모리의 총 샘플 개수 (uniform)
- \( P(i) \): 샘플 \( i \)의 확률
- \( \beta \): 중요도 샘플링 보정 정도를 조절하는 지수. $\beta = 1$일 때 완전한 보정 수행
6. 경험 저장 : 이전 상태와 행동을 메모리에 저장하고, 우선순위는 가장 큰 값으로 설정
9. 샘플링 : 우선순위 확률 분포에 따라 전환을 샘플링
10. 편향 보정 : 중요도 샘플링 가중치로 우선순위 샘플링에 의한 편향을 보정
11. TD 오류 계산 : Q값을 기반으로 TD 오류를 계산 -> 큰 오류일수록 더 중요한 경험
12. 우선순위 설정 : 계산된 TD 오류의 절댓값을 우선순위로 설정
18. 행동 선택 : 새로운 상태에서 정책을 통해 행동을 선택
Atari Experiments
rank-based와 proportional 우선순위 방법은 Double DQN과 동등한 성능을 훈련 초반에 훨씬 더 빨리 달성한다. 순위 기반 우선순위는 전체 훈련 시간의 47%(최대 점수)에서 equivalence point를 도달하고 proportional 기반 우선순위는 38%(최대 점수)에서 도달한다.
경험의 중요도를 고려하여 기존의 균등 재생 방식에 비해 학습 속도와 효율성을 크게 개선할 수 있으며 TD 오류 기반의 우선순위 설정과 확률적 샘플링, 중요도 샘플링 보정을 통해, 알고리즘이 편향 없이 더 좋은 성능을 낼 수 있다.