시즌 2 · 알파폴드편 / PART 8 · PART 8 · MuZero (2019) / Ch 4 · 잠재 공간에서의 MCTS

이번 챕터에서 무엇을 하는가

🎬 지금까지의 흐름 정리

Ch 1에서 우리는 AlphaZero가 외부에서 받은 게임 규칙(next_state)에 의존한다는 것을 봤다.

Ch 2에서는 그 규칙을 학습으로 만든다는 발상이 왜 매력적인지(샘플 효율, 계획, 전이) 살펴봤다.

Ch 3에서는 MuZero가 이 발상을 어떻게 구현했는지 — h, g, f 세 신경망으로 분리해서 잠재 공간 위에서 작동시킨다는 핵심 아키텍처를 만났다.

🎯 그런데 한 가지 큰 빈자리

지금까지는 "신경망 세 개를 어떻게 쓸 것인가"에 대한 그림이 비어 있다. 다이어그램만 보면 일직선으로 시뮬레이션하는 것 같지만, 실제 MuZero는 트리 탐색을 한다.

이 챕터는 그 빈자리를 채운다. 시즌 1 PART 3에서 본 MCTS의 네 단계 — Select, Expand, Evaluate, Backup — 가 잠재 공간 안에서 어떻게 일어나는지 단계별로 추적한다.

📖 이번 챕터의 12 단계
  1. MCTS 네 단계를 다시 한 번 (시즌 1 PART 3 복습)
  2. 왜 MuZero에서도 굳이 트리 탐색이 필요한가
  3. Select 단계 — PUCT 공식의 재해석
  4. Select 단계 — MuZero 버전에서 무엇이 달라지는가
  5. Expand 단계 — g가 호출되는 순간
  6. Evaluate 단계 — f가 새 리프에서 평가
  7. Backup 단계 — 보상이 트리를 거꾸로 올라간다
  8. 한 시뮬레이션 통째 추적 (6 단계 walkthrough)
  9. 미니 MCTS를 직접 실행 (코드)
  10. 왜 이게 작동하는가 — 잠재 공간의 자유도
  11. 확인 퀴즈
  12. 챕터 정리 + Ch 5 예고

분량이 좀 있다. 하지만 이 챕터까지 끝내면 MuZero라는 알고리즘의 전체 그림이 머릿속에 정확히 들어온다. 시즌 2의 가장 결정적인 챕터이기도 하다 — PART 9 이후 AlphaFold로 넘어갈 때, 여기서 배운 "잠재 공간 위에서의 계산" 사고방식이 그대로 다시 등장한다.

💡 읽는 자세

이 챕터는 한 번에 읽으려 하지 말자. 한 섹션씩 정성스럽게, 머릿속에서 트리를 같이 그려보면서 따라가는 게 좋다.

마지막 코드 섹션을 직접 한 번 돌려보면 "아, 이게 진짜로 움직이는구나"가 확실히 잡힌다.