시즌 1 · 알파고편 / PART 4 · PART 4 · 신경망 등장: 직관을 학습한다 / Ch 4 · Value Network

MCTS + Value Network

Value Network를 MCTS에서 어떻게 사용?

📖 MCTS 4단계 변경 (Simulate 단계)
# 이전 (PART 3): 무작위 rollout
g = node.game
while g.winner() is None:
    g = g.play(random.choice(g.possible_moves()))
winner = g.winner()
v = 1 if winner == node.parent.game.turn else -1 if winner == 'draw' else -1

# 이후 (Value Network)
v = value_net(node.game.board)   # ← 끝까지 안 가도 즉시 평가!

rollout 1번이 250 무작위 수 (19x19 기준) → value net forward pass 1번. 250배 절약.

🎯 알파고의 실전 — 두 가지 평가 혼합

알파고는 둘 다 사용 + 평균:

V_final = λ · V_net + (1−λ) · V_rollout

알파고 논문 λ = 0.5 (반반). 왜 혼합?

  • Value net: 정확하지만 학습한 패턴에 갇힐 수 있음
  • Rollout: 부정확하지만 게임 끝까지 가니까 함정 발견 가능
  • 두 가지가 보완 → 합치면 더 정확
💡 AlphaGo Zero의 변화

2017년 AlphaGo Zero는 rollout 완전 제거. Value Network만 사용:

  • 이유 1: Value Network가 충분히 정확해짐 (학습 기술 발전)
  • 이유 2: 더 단순한 알고리즘 = 더 깨끗한 학습 신호
  • 이유 3: 속도 — rollout 빼면 1수당 수십 배 빠름

알파고에서 알파고 제로로의 진화는 "부품 빼기"가 핵심. 단순함이 강함.

📊 알파고 ELO 기여 다시
  • Pure MCTS: 2700
  • + Policy Network: 3000 (+300)
  • + Value Network: 3500 (+500) ← 가장 큰 기여

Value Network가 알파고의 가장 큰 단일 기여. 사람 프로 수준에 도달한 결정적 부품.