Summary
대표적인 Actor-Critic 계열?
- value-based, policy-based의 장점을 모은.
Actor-Critic :
- actor: policy를 학습하고
- critic: value를 평가.
Actor-Critic 등장 배경:
- value-based의 대표적 알고리즘인 DQN 같은 경우는 연속적인 action을 다루기 어렵고, REINFORCE 같은 pure-policy based 알고리즘들은 gradient estimator의 variance가 커서 모델 수렴이 어려웠음.
- 같은 상황, 같은 action을 하더라도 final output이 천지차이로 달라질 수 있어서, gradient의 variance가 크다.
- Analogy : 축구 경기를 한 상황에 대해 policy-based(REINFORCE)를 할 경우, Monte Carlo를 하다가 즉, 경기를 끝까지 보고 이기고 졌다는 sign(gradient)에 의해서 모든 행동에 대해 업데이트를 함. 따라서 만약 모든 행동을 동일하게 하다가 공을 찬 행동만 딱 다르게 했을 경우, gradient가 완전히 달라질 수 있기 때문에 학습이 불안정함.
- 한 행동에 대한 gradient가 unstable.
MC(Monte Carlo) vs TD(Temporal Difference):
- MC : 한 episode의 끝까지 보고 update
- TD : step마다 update.
그러니 정리해보면, PPO는 n-step TD로 구현되어 있다.
- n-step TD : Bellman equation에서 value에 대한 식을 풀어 쓸 때, crtic에 비 의존하는 step을 n개 사용하겠다.
- 즉, n-step은 실제 해보겠다.
거기에 clipping을 넣어서 policy가 급변하지 않게 해보겠다. → PPOReward vs Value:
- Reward : 현재 state에서 action에 따라 얻는 즉각적 advantage
- Value : 현재 state에서 시작해서 앞으로 받을 수 있을 것이라 기대되는 reward의 총합.
Q. 왜 reward 만으로 부족하냐?
- RL의 maximize 대상은 short-term gain(reward)가 아닌, long-term(value)이기 때문.
Clipped Surrogate Objective
- : 현재 정책과 이전 정책의 확률 비율입니다. (얼마나 변했는가?)
- (Advantage): 현재 행동이 평균적인 행동보다 얼마나 더 좋았는지를 나타내는 지표입니다.
- critic model이 계산 담당.
- : 핵심 장치입니다.
- 가 1 근처(예: )를 벗어나지 못하도록 강제로 자릅니다.
- Clip은 policy update 정도를 control해서 이름 붙은거고.
- surrogate라고 하는 이유는 objective가 reward 혹은 value를 direct하게 maximize하게끔 정의된게 아니라, 확률 변동 ratio에 advantage를 곱하는 형식으로 정의되어서.