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

Expand 단계 — g가 호출되는 순간

Select가 끝나면 리프에 도착한다. 이제 그 리프를 확장(expand)할 차례 — MuZero에서 가장 특징적인 단계.

📖 Expand에서 일어나는 일

도착한 리프 노드를 L, L의 부모를 P, L까지 오는 데 사용된 행동을 a라고 하자.

  1. g(P.state, a)를 호출 → L의 잠재 상태 s_L과 그 행동의 보상 r_L
  2. f(s_L)를 호출 → L에서의 정책 p_L과 가치 v_L
  3. L에 잠재 상태 s_L와 보상 r_L를 저장
  4. L 아래에 가능한 행동만큼 자식 노드 생성, 각 자식의 prior에 p_L 분포 분배
💡 g 한 번이 만들어내는 것

g 한 번 호출이 트리에 어떤 정보를 추가하느냐:

  • 잠재 상태: 트리의 다음 깊이로 이동
  • 보상: 이 행동의 즉시 보상 (체스/바둑은 0, 아타리는 점수)

이 두 가지가 MCTS에 들어와야 트리 탐색이 진행될 수 있다.

🎯 AlphaZero vs MuZero — Expand에서의 정확한 차이
단계 AlphaZero MuZero
다음 상태 next_state(s, a) — 게임 규칙 g(s, a) → s′ — 학습된 dynamics
보상 게임에서 정의됨 (예: 승=+1, 패=-1) g(s, a) → r — 학습된 값
정책/가치 f(s) f(s) — 똑같음
상태 표현 보드 (특징판) 잠재 벡터
⚠ 결과 — MuZero는 "규칙 없이" 트리를 만든다

외부에서 받는 함수가 하나도 없다. 모든 정보가 신경망에서 생성된다.

이게 MuZero가 보드 게임에서 아타리 게임까지 같은 알고리즘으로 다 풀 수 있는 이유다 — 아타리는 게임 규칙을 코드로 받지 못하지만, MuZero는 그래도 작동한다.

그런데 한 가지 더 — Expand는 보통 Evaluate와 같이 일어난다. 정확히 어떻게? 다음 섹션.