Summary

대표적인 Actor-Critic계열

Actor-Critic :

  • actor: policy를 학습하고

  • critic: value를 평가.

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가 급변하지 않게 해보겠다. PPO

Q. 왜 reward 만으로 부족하냐?

  • RL의 maximize 대상은 short-term gain(reward)가 아닌, long-term(value)이기 때문.

Background

REINFORCE 계열 알고리즘의 단점으로 Sample Inefficiency가 꼽힘.
한 episode로 한 번 파라미터가 업데이트 된다는 건,
policy가 업데이트 되었다는 말. 즉 이전 episode data로 추가적 학습을 할 수 없음.
on-policy 알고리즘 모두에 해당하는 문제.

그렇다고 여러번 사용하는 순간, policy가 계속 바뀌어서 catastrophic forgetting되어 버림.
solution path: 한 번에 너무 많이 변하지 않게, “적당하게 update하자. ”

Solution 1. Ratio & Clipped Surrogate Objective 도입

정책이 얼마나 변했는지 측정하기 위해, PPO는 예전 정책과 업데이트되고 있는 현재 정책의 **확률 비율()**을 계산합니다.

: 데이터를 수집할 때 썼던 과거의 낡은 정책 (고정된 값)
: 지금 열심히 가중치를 업데이트하고 있는 실시간 정책

의미: 만약 비율이 이면 정책이 변하지 않은 것이고, 면 과거보다 그 행동을 할 확률이 50%나 늘어났다는 뜻입니다.

  • ​: 현재 정책과 이전 정책의 확률 비율입니다. (얼마나 변했는가?)
  • (Advantage): 현재 행동이 평균적인 행동보다 얼마나 더 좋았는지를 나타내는 지표입니다.
    • critic model이 계산한 Value나 Q값 이랑 actor 모델의 policy 사용해서 계산.
  • : 핵심 장치입니다.
    • 가 1 근처(예: )를 벗어나지 못하도록 강제로 자릅니다.
  • Clip policy update 정도를 clipping해서.
  • surrogate라고 하는 이유는 objective가 reward 혹은 value를 direct하게 maximize하게끔 정의된게 아니라, 확률 변동 ratio에 advantage를 곱하는 형식으로 정의되어서.

Training Procedure

결론부터 말씀드리면, 는 영원히 고정(Freeze)되는 것이 아니라, 일정 주기(하나의 학습 사이클)마다 새롭게 덮어씌워지며 업데이트됩니다. 이 과정을 직관적으로 이해하기 위해 PPO가 데이터를 수집하고 학습하는 전체 사이클을 3단계로 쪼개서 살펴보겠습니다. 가 언제 고정되고 언제 변하는지가 핵심입니다.

1단계: 데이터 수집 (Rollout)과 ‘사진 찍기’

에이전트가 현재 가진 network(policy)로 게임을 스텝 동안 플레이하며 데이터(상태, 행동, 보상 등)를 모읍니다.
이때, **데이터를 모을 당시의 정책을 ‘찰칵’ 하고 사진을 찍어 박제(snapchot)**해 둡니다. 이 박제된 과거의 정책이 바로 ****가 됩니다. 이제 다음 단계로 넘어갈 때 는 임시로 고정(Freeze)됩니다.

2단계: 여러 번 사용하기 (Multiple Epochs Optimization)

이제 1단계에서 모은 데이터를 버리지 않고, 잘게 쪼개어(미니배치) 실시간 신경망인 ****를 여러 번(보통 4~10 Epoch) 반복해서 학습시킵니다.

  • 이때 기준점이 되는 는 1단계에서 박제해 둔 상태 그대로 고정되어 있습니다.
  • 는 데이터를 보며 점점 똑똑해지려고(가중치가 변하려고) 꿈틀대지만, 수식에 있는 클리핑(Clipping) 안전장치 때문에 고정된 로부터 배 이상은 벗어나지 못하도록 제어를 받습니다.
  • 덕분에 데이터를 여러 번 재사용하면서도 정책이 한 번에 박살 나는 파멸적 망각을 막을 수 있습니다.

3단계: 세대교체 (Sync & Discard)

정해진 Epoch만큼 다 정보를 빼내었다면, 드디어 사이클이 끝납니다.
이제 1단계에서 모았던 데이터는 (이미 여러 번 써먹어서 낡았으므로) 미련 없이 전부 버립니다.
그리고 가장 중요하게, 방금 학습을 마쳐서 똑똑해진 를 새로운 자리에 복사(덮어쓰기)하여 세대교체를 합니다.

Full Loss

기존 RLHF에서 PPO로 풀려고 하는 optimization 문제는 아래와 같음.

앞 항은 reward 모델이 반환하는 값, 뒤에는 policy update 정도 조절.

PPO는 이걸,

이렇게 근사해서 해결하려고 함.

Abstract


Summary

PPO라는

Introduction


Summary

Contents

Background: Policy Optimization


Title

Contents

Related Papers


Methods


Results


Discussion