자주 하는 실수와 요약
자주 하는 실수
| 실수 | 나온 문제 | 바로잡는 법 |
|---|---|---|
| SARSA의 목표에 다음 칸에서 가장 좋은 행동의 값을 넣음 | 1 | SARSA는 다음 칸에서 실제로 고른 행동의 값을 넣는다. 가장 좋은 값을 넣는 것은 Q-러닝이다 |
| 탐색 차례에 생긴 나쁜 결과를 「운」이라며 학습에서 빼려 함 | 2 | 탐색이 계속되는 한 그것은 걷는 방식의 일부다. 온폴리시 학습은 그것까지 셈에 넣는다 |
| 비평가가 그리디 디코딩의 값을 배운다고 봄 | 3 | 비평가는 롤아웃을 뽑은 정책(샘플링 온도 1)의 값을 배운다 |
| 남의 기록에서 다음 수의 실수까지 지금 수의 탓으로 돌림 | 4 | 다음 국면의 최선을 목표에 넣으면 남이 둔 기록으로도 최선의 값을 배운다(오프폴리시) |
| 강물이 −50이니 무작위 스텝이 조금만 섞여도 물가 길이 나쁘다고 봄 | 5 | 아끼는 스텝 수와 빠지는 기대 손해를 비교한다. 이 산책로에서는 |
| 리플레이 버퍼의 지난 기록이면 SARSA로 지금 정책을 배울 수 있다고 봄 | 6 | 기록 속 다음 행동은 지난 정책의 것이다. 지난 경험으로 지금 정책을 배우려면 Q-러닝처럼 다음 칸의 최선을 지금 표로 셈한다 |
| 무작위 차례에서는 가장 좋은 행동이 뽑히지 않는다고 봄 | 7 | 가장 좋은 행동의 확률은 |
| 그리디로 고르다 보면 결국 더 좋은 것으로 돌아온다고 봄 | 8 | 다시 고르지 않는 행동의 어림값은 고쳐지지 않는다. 한 번 밀리면 영영 밀릴 수 있다 |
| 행동이 수만 개여도 ε-그리디의 탐색이 쓸모 있다고 봄 | 9 | 균일한 무작위는 거의 늘 엉뚱한 행동을 시험한다. 언어 모델은 자기 분포로 샘플링해 탐색한다 |
| 1등으로 고른 것의 점수를 그 참값으로 읽음 | 10, 12 | 여럿 가운데 가장 좋아 보여서 고른 값은 부풀어 있다. 다시 재거나 깎아서 읽는다 |
| 평균이 모두 0이면 가장 큰 어림값의 평균도 0이라고 봄 | 11 |
요약
상태의 가치만으로는 다음 칸을 모르면 행동을 고를 수 없으므로, (상태, 행동) 짝의 값인 행동 가치를 직접 배운다. 행동 가치를 알면 지도 없이도 값이 가장 큰 행동을 고르면 된다.
SARSA는 「받은 보상 + 다음 칸에서 실제로 고른 행동의 값」을 목표로 행동 가치를 고친다. 경험을 모은 정책과 배우는 정책이 같은 온폴리시 학습이라, 탐색으로 생긴 무작위 스텝까지 셈에 넣은 값을 배운다. 강가 산책로에서 SARSA는 물가에서 두 줄 떨어진 13스텝 길을 골랐고, 학습하는 동안 받은 리턴은 −17.51이었다.
Q-러닝은 목표에 다음 칸의 가장 큰 행동 가치를 넣는다. 다음 칸에서 누가 무엇을 골랐든 거기서부터 최선을 다한다고 가정하므로, 무작위 스텝을 섞어 모은 경험으로 무작위 스텝 없는 정책의 값을 배운다(오프폴리시). 같은 산책로에서 Q-러닝은 11스텝 물가 길을 배웠지만 학습하는 동안에는 무작위 스텝으로 자주 빠져 리턴이 −27.19였다. 모든 상태에서 모든 행동을 거듭 시험하고 학습률을 로빈스–먼로 조건대로 줄이면 Q-러닝의 표는 최적 행동 가치에 확률 1로 다가간다. 목표가 다음 행동을 기록에서 꺼내지 않으므로 지난 경험도 다시 쓸 수 있다.
ε-그리디는 확률
Q-러닝의 목표에 든
막힌 곳
이 장의 방법들은 모두 표 하나에 기댔는데, 강가 산책로는 칸 40개 × 방향 4개 = 160칸, 식당은 다섯 칸이었다. 표의 칸마다 따로 값을 적고, 그 칸의 (상태, 행동)을 직접 겪어야만 값이 고쳐졌다. 그런데 게임 화면을 보고 조이스틱을 움직이는 문제라면 상태는 화면의 픽셀 전부라서 같은 화면이 두 번 나오는 일조차 드물다. 상태가 화면 픽셀이면 표를 어떻게 채우나?