지금까지 환경에 대해 알 때와 모를 때의 강화학습 문제 풀이 기법에 대해 배웠다.
하지만 지금까지 배운 내용은 모두 학습이 전혀 되지 않은 agent를 학습시켜 문제를 풀이하는 방식이었다.
간단한 문제의 경우에는 지금까지 진행해 왔던 강화학습의 방식을 사용할 수 있겠으나 매우 복잡하고 데이터가 셀 수 없이 많을 경우 처음부터 agent를 학습시킨다면 매우 긴 시간이 필요할 것이다.
그렇다면 이미 학습된 다른 좋은 정책을 우리가 풀어야하는 문제에 적용시킬 수 있을까?
가능하다. 이를 Off-policy 학습이라 한다.
1) Off-policy 학습
목적 : 주어진 정책 $\pi(a|s)$에 대한 $Q^{\pi}(s,a)$를 계산하는 것 ($Q^{\pi}(s,a)$를 알면 정책을 만들 수 있음)
그러면 임의로 정한 행동 정책 $\mu(a|s)$로 구한 episode에서도 $Q^{\pi}(s,a)$를 구할 수 있을까?
off-policy의 경우 action을 취하는 behavior policy와 improve를 하는 target policy가 별도로 존재한다.
만약 가능하다면
- 다른 좋은 정책으로부터 얻어진 샘플에서 학습이 가능
- 정책 개선과정에서, 이전 정책의 가치평가를 위해 모은 샘플을 재활용 가능
- $\pi(a|s)$는 계속적으로 최적 정책을 찾지만 $\mu(a|s)$는 조금 더 exploration을 하게 만들 수 있음.
더 짧은 시간 내 더 좋은 RL에이전트를 학습시킬 가능성이 있음!
그림2.를 보면 상태와 행동 그리고 보상의 Trajectory가 모두 $\pi$에 따라 결정되는 것을 볼 수 있다.
* Trajectory : 에피소드를 진행하면서 지나가게 되는 경로
$\mathbb {E}_\pi[\cdot]$의 의미 : 정책 $\pi$를 따르면 발생할 Trajectory의 분포에 대한 평균치
$\pi$ 또는 $\mu$를 정책으로 할 때 Trajectory의 확률은?
그러면 이제 정책 $\pi$와 $\mu$의 Trajectory 비율을 구해보자
Trajectory의 비율을 $\rho$로 표현한다.
각 MDP Trajectory의 확률은 MDP구조 $p(S_{k+1}|S_k,A_k)$에 영향을 받지만
두 개의 Trajectory의 비율 $\rho_{t:T-1}$는 MDP구조에 영향을 받지 않는다!
결과적으로 MDP모델을 몰라도 $\rho$를 계산할 수 있다!
2) Importance Sampling
Importance Sampling이란 $p(x)$의 함수 형태는 알지만 샘플을 만들기 어려울 때
$q(x)$라는 샘플링하기 쉬운 분포를 활용해 $\mathbb{E}_{x~p}[f(x)]$를 추산하는 기법
Off-policy MC에서는 Importance Sampling를 $Q^{\pi}(s,a)$를 구하려 하나
$\pi$정책을 사용하기 어려울 때 $\mu$ 정책과 Trajectory의 비율 $\rho$를 사용하여
$\pi$의 행동가치함수 $Q^{\pi}(s,a)$를 구할 때 활용한다.
3) Off-policy MC
Off-policy MC 학습의 순서는
(1) 임의의 정책함수 $\mu$로 에피소드를 생성한다.
(2) $G_{t}^{\pi/\mu} = \prod_{k = t}^{T-1} \frac{\pi(A_k|S_k)}{\mu(A_k|S_k)}$를 계산
(3) MC update 수행
$$ Q(s_t,a_t) \leftarrow Q(s_t,a_t) + \alpha(G_{t}^{\pi/\mu} - Q(s_t, a_t))$$
단점 :
(1) $\prod_{k = t}^{T-1} \frac{\pi(A_k|S_k)}{\mu(A_k|S_k)}$ 때문에 $G_{t}^{\pi/\mu}$의 분산이 커질 수 있음
- 분산을 최소화하는 optimal한 $\mu$를 만들 수 있지만, optimal $\mu$를 찾는데 노력이 필요
- optimal $\mu$가 exploration에 도움이 되지 않을 수도 있음
(2) $\pi(A_k|S_k) \ne 0$이면, $\mu(A_k|S_k) \ne 0$이어야만 함
마무리.
On-policy learning과 Off-policy learning에 대한 개념을 구분할 수 있다.
내 생각 :
앞서 봐왔던 On - policy 기법과는 다르게 Off - policy기법을 잘 이용한다면 시간적인 부분에서 큰 이득을 볼 수 있을 것 같다.
하지만 이점이 있는 만큼의 risk도 존재한다. $G_{t}^{\pi/\mu}$의 분산이 커질 수 있다는 점과 optimal $\mu$를 찾는데도 노력이 필요하다는 점이다.
그래서 현실적으로 잘 사용되지는 않는 부분이라고 한다.
더더욱 다음 챕터에서 배우는 Q-learning에 대해 기대가 된다.
참고자료 :
강화학습 A-Z 강의자료
'강화학습 강의 복습노트' 카테고리의 다른 글
Part2 - 10. Off-policy TD control (0) | 2020.12.27 |
---|---|
Part2 - 8. SARSA : TD기법을 활용한 최적 정책 찾기 (0) | 2020.12.26 |
Part2 - 7. MC Control : MC기법을 활용한 최적 정책 찾기 (0) | 2020.12.26 |
Part2 - 6. Temporal Difference(TD) 정책추정 (0) | 2020.12.25 |
Part2 - 5. 몬테 카를로 정책추정 (Monte-carlo prediction: MC prediction) (0) | 2020.12.25 |