자가 대국만으로 학습 — 데이터 자기 생성
AlphaGo Zero의 학습 데이터는 100% 자가 대국. 어떻게 가능한가?
📖 자가 대국 루프 — 한 사이클
- 현재 모델로 자가 대국 (흑 = 현재 모델, 백 = 현재 모델)
- 한 게임에서 각 수마다 MCTS 탐색 (~800 iterations)
- MCTS visits 분포를 정답 policy로 사용
- 게임 끝 → 결과를 value의 정답으로
- 이 데이터 (보드, 정답 policy, 정답 value)로 모델 학습
- 학습된 모델이 다음 사이클의 시작점
🎯 핵심 아이디어 — MCTS visits가 policy의 정답
알파고 Zero는 학습 데이터의 정답을 자기 자신이 만듦:
- 한 보드에서 MCTS 800회 시뮬레이션 → 각 자식 노드의 visits 분포
- visits 분포 = "800회 탐색의 결과 신경망보다 더 좋은 분포"
- 이걸 신경망의 다음 학습 정답으로 사용
- 신경망이 MCTS의 결과를 흡수 → 점점 강해짐
💡 자기 자신을 가르치는 순환
이게 핵심 통찰. 표현하면:
신경망 v1 (무작위) ↓ 자가 대국 + MCTS 800회 신경망 v1을 가이드로 사용하지만, 탐색 결과 visits 분포는 v1보다 똑똑함 ↓ visits 분포를 정답으로 학습 신경망 v2 (v1보다 강함) ↓ 같은 사이클 반복 신경망 v3, v4, v5, ...
"학습 신호가 자기 안에서 생성됨". 외부 데이터 0.
📊 사이클 규모 (논문)
- 한 자가 대국 게임: 평균 200수
- 각 수에 MCTS 1,600 시뮬레이션
- 한 게임 = 32만 시뮬레이션
- 한 사이클당 25,000 게임
- 총 학습 게임: 4,900만 (40일)
이 모든 게 컴퓨터 자체 생성. 사람 게임 0개.