이전까지 살펴본 Value Based Method 들은 State 와 Action 으로부터 Q function 을 추정한 후, 최적의 행동을 선택하기 위해 이를 평가해 정책을 구해야 했다. 하지만 이 방법은 $\argmax_aQ$ 를 일일히 계산해야 하고, action space 가 연속적인 경우 적용이 어렵다는 단점이 있었다.
반면 Policy Based Method 들은 State 와 Action 으로부터 바로 정책을 구한다. 그렇기 때문에 위와 같은 문제를 해결할 수 있게 된다.
Continuous action space 를 다룰 때 주로 사용되는 방법으로, 정책 자체를 학습하는 On-Policy 방식이다. 신경망 파라미터인 $\theta$ 를 조정해 보상을 극대화하는 방식으로 작동한다. DQN 은 Q estimation 을 잘 하는거였다면, PG 의 목적은 정책으로부터 좋은 보상을 받기 위한 행동을 찾는 것이다. DQN 과 달리 Q-function 을 몰라도 policy 를 도출할 수 있다.
어떤 trajectory $\tau$ 가 주어질 때, terminal state 까지 관찰 후 업데이트가 이루어진다. $\theta$ 를 조정하기 위한 목적 함수는 다음과 같다.
$$ J(\theta)=E_{\pi_\theta}[r(\tau)]=\int p(\tau;\theta)r(\tau)d\tau\\\text{where } p(\tau;\theta)=\pi_\theta(\tau) $$
정책이 따르는 trajectory들 중에서 기댓값 보상인 $J(\theta)$ 를 극대화하는 파라미터를 찾기 위해 Gradient Ascent 를 사용한다.
$$ \theta:=\theta+\alpha\nabla_\theta J(\theta) $$
Objective Function 의 gradient 를 정의하는 정리다.
$$ \nabla_\theta J(\theta)=\nabla_\theta E_{\pi_\theta}[r(\tau)]=E_{\pi_\theta}[r(\tau)\sum^{T-1}{t=0}\nabla\theta log \pi_\theta(a_t\mid s_t)] $$
Reward Function $r(\tau)$ 는 업데이트의 방향을 제시한다. Summation of Gradients 는 업데이트가 되는 정도 (크기) 를 의미한다.
The derivative of the expected total reward is the expectation of the product of total rewards and summed gradients of log of the policy.
이를 이용하면 다음과 같은 장점들이 있다.
Policy Gradient Theorem 의 증명 과정을 살펴보자
