자주 하는 실수와 요약
자주 하는 실수
| 실수 | 나온 문제 | 바로잡는 법 |
|---|---|---|
| 표본에 한 번도 안 나온 쪽도 가중치를 크게 주면 되살릴 수 있다고 봄 | 1 | 곱할 샘플이 없고 비율도 「÷ 0」이다. 가중치 보정은 |
| 드문 샘플이 나오면 추정이 좋아진다고만 봄 | 2 | 드문 샘플은 큰 가중치로 추정을 혼자 흔든다. 일곱 번 가운데 한 번의 6이 추정의 41%를 정한다 |
| 방금 생성한 배치라서 PPO의 모든 에폭이 온폴리시라고 봄 | 3 | 첫 업데이트 뒤로는 |
| 값이 0이 아니면 더 밀 때도 늘어난다(그래디언트가 있다)고 봄 | 4 | 한도에 닿은 적립금, 잘린 항 |
| 클리핑이 있으면 비율이 |
5 | 클리핑은 선을 넘은 샘플을 더 밀지 않을 뿐이다. 파라미터를 함께 쓰는 다른 토큰의 업데이트와 큰 걸음이 비율을 넘긴다 |
| 비율이 |
6 | |
| 이긴 비율을 그대로 점수로 씀 | 7 | 이길 확률 = σ(점수 차)이므로 점수 차는 |
| 보상에 상수를 더해도 샘플 추정까지 무해하다고 봄 | 8 | 기대값은 그대로지만 분산이 커진다. 베이스라인(비평가)이나 보상 정규화로 흡수한다 |
| 9 | 기준 |
|
| KL 페널티도 한 걸음씩만 제한한다고 봄 | 9 | 기준 |
요약
생성이 비싸므로 한 배치를 여러 번 쓰고 싶지만, 첫 업데이트부터 데이터는 옛 정책의 것이 된다. 임포턴스 샘플링은 비율
이 장에서 데이터를 가른 두 축 — 데이터를 뽑은 정책이 지금 정책과 같은가(온폴리시·오프폴리시), 학습 도중 데이터를 새로 만드는가(온라인·오프라인) — 에 방법들을 놓으면 이렇다.
| 방법 | 온라인/오프라인 | 온폴리시/오프폴리시 |
|---|---|---|
| REINFORCE, Actor-Critic | 온라인 | 온폴리시 — 뽑자마자 한 번 쓰고 버림 |
| PPO (이 장) | 온라인 | 살짝 오프폴리시 — 한 배치를 여러 번 재사용 |
| Q-러닝(행동마다 앞으로 받을 점수를 배우는 방법) + 리플레이 버퍼(지난 경험을 모아 두고 다시 꺼내 쓰는 저장소) | 온라인 | 오프폴리시 — 오래된 경험도 재활용 |
| DPO | 오프라인 | 오프폴리시 — 남이 만든 고정 데이터셋 |