Temporal Difference

image.png

실제 리턴 전체를 기다리지 않고, 다음 상태에서 얻을 예상 값만 보고 미리 업데이트하는 방식이다.

Monte Carlo는 에피소드 끝까지 기다리는 반면 TD는 한 스텝만 보고 즉시 업데이트한다.

TD는 테이블 방식(tabular)으로 값을 갱신하고, 모델 없이(model-free) 학습하는 방법이다. MC 와 마찬가지로 Q-table 에 (s,a) 를 저장하고, 최적값을 계산할 수 없다는 특징을 가진다.

TD 는 one-step transition 기반의 GPI 를 채택한다. Policy Evaluation 에서 Value Function 을 추정하고, Policy Improvement 에서 ε-greedy 등으로 정책을 개선하는 과정을 반복한다. MC 와 다른 점은 한 스텝만 보고도 가치 함수를 갱신할 수 있는 one-step transition 이라는 점이다.

Advantages of TD

TD는 DP 와 MC 의 장점들을 쏙쏙 뽑아온다.

  1. Bootstraping of DP

    DP처럼 한 번에 전체 에피소드를 보지 않아도 값을 업데이트할 수 있다. 미래의 예측값을 현재 값을 이용해 표현할 수 있기 때문에 final outcome 을 기다리지 않아도 된다. 이는 온라인 학습 등에 적합하다.

  2. Sampling of MC

    MC처럼 직접 환경에서 샘플을 얻어 학습 가능하기 때문에 model-free 상황에서도 사용 가능하다.

SARSA & Q-Learning

TD 학습의 대표적인 두 가지 방식이다. 두 방식은 On-policy vs Off-policy 차이가 핵심이다.

On-policy 는 자기 자신이 따르고 있는 정책의 결과를 학습하고, Off-policy 는 실행한 정책과는 무관하게 최적의 행동을 가정한다.

앞서 배웠던 MC 와 비교해보며 두 방식을 알아보자.

Sarsa learns $Q^{\pi}$ (on-policy) by using Bellman expectation equation. Q-learning directly learns $Q^{*}$ (off-policy) by using Bellman optimal equation.