4
Most read
5
Most read
8
Most read
AlphaGo 알고리즘 요약
이주열
바둑(or 체스) 인공지능 프로그램 기본
• 게임 경우의 수 탐색 à 트리(tree) 탐색 알고리즘 (e.g. 깊이 우선 탐색, 넓이 우선 탐색 알고리즘)
체스의 게임 트리 예시
트리 탐색 예시
바둑이 쉽게 정복되지 않은 이유
• 10360 가지 경우 수 존재
• 바둑 규칙을 고려한 평균 경우 수가 250개, 바둑 평균 약 150수 정도. 따라서, 250150 ≈ 10360
• 우주의 원자 개수(1080)보다 많은 경우 수!
• 현재의 컴퓨팅 파워로 정복하기 어렵다는 평가였음
• 1997년 체스 세계 챔피언 카스파로프를 이긴 IBM Deeper Blue는 Brute force 방식으로 게임 트리 Full search
• 따라서, 바둑 정복을 위해서 게임 트리의 탐색 범위를 줄이는 방법 필요
AlphaGo 알고리즘 아웃라인
• 게임 트리 탐색 방법: 몬테카를로 트리 탐색(Monte Carlo tree search, MCTS)
• 현재 많은 인공지능 바둑 프로그램(e.g. Crazy Stone, Zen 등)이 채택한 게임 트리 탐색 알고리즘
• 현재 상태(selection)에서 한 단계 예측(Expansion) 후 시뮬레이션(Simulation)한 최종 결과에 따른 트리 상태
정보 업데이트(Backpropagation). 이 과정을 X 번 반복 à 모든 경로 탐색 불가능시 효율적
• 게임 트리 탐색 범위 줄이는 방법: AlphaGo 핵심 알고리즘
• 넓이 탐색 범위 줄이기 : 현재 상태에서 다음 착수 위치 찾기 à MCTS의 Expansion
• 깊이 탐색 범위 줄이기 : 해당 착점의 승률 계산 à MCTS의 Simulation
AlphaGo 핵심 알고리즘 (1/2)
• 게임 트리의 넓이 탐색 범위 줄이기: 착수 위치 찾기
1) 바둑 기보 패턴 학습 à SL policy network으로 명명
• Convolutional Neural Networks(ConvNet)로 약 3천만 KGS 기보 학습
• Deep Learning 알고리즘 중 하나인 ConvNet은 이미지 패턴 인식에 탁월하며 지도 학습(Supervised Learning, SL)에 해당
• P(a|s)를 최대화하는 방향으로 ConvNet 학습, [P(a|s)는 상태(status, s)에 따른 다음 수 행위(action, a) 확률]
2) 학습한 기보에만 최적화되는 것을 방지하기 위해 자가 대국(self play)으로 강화 학습 à RL policy network으로 명명
• 기보 패턴을 학습한 ConvNet들간 대국으로 승패에 따른 강화 학습1)(Reinforcement Learning, RL) 실행
• Policy Gradient 강화 학습 알고리즘 적용. 이는 강화학습의 Q-function과 같은 reward score 함수 구하기가 아닌 P(a|s)를 직접 구
하는 방법 [policy(s) = arg maxa Q(s, a)]
• P(a|s)를 최대화하는 방향으로 ConvNet 학습
3) 단순 패턴 인식 à Rollout policy으로 명명
• 바둑 규칙에 따른 단순 P(a|s) 확률 계산
• SL policy network, RL policy network, Rollout policy를 조합하여 사용
주1) 강화 학습은 결과에 따른 reward score를 부여함: E.g. 승리하면 +1, 패배하면 -1
AlphaGo 핵심 알고리즘 (2/2)
• 게임 트리의 깊이 탐색 범위 줄이기: 해당 착점의 승률
• 앞서 만든 RL policy network으로 승률 계산하는 ConvNet 학습 à Value network으로 명명
• RL policy network에서 확률 함수 대신에 reward score 함수(e.g. Q-function) 정의
• Reward score 예측이 잘 맞는 방향으로 KGS 기보 학습
• Deep Q Network 강화 학습과 유사한 형태로 앞서 RL policy network의 Policy Gradient 알고리즘과 다름
• 학습한 KGS 기보에 최적화되는 것을 방지하기 위해 신규로 자가 대국(self play)한 기보로 학습
• RL policy network들간 자가 대국 후 생성된 기보로 Value network 학습
AlphaGo의 deep neural network 학습 파이프라인
Human expert
positions
Classification
SL
Policy network
Self Play
RL
Policy network
Self Play
Self-play data Value network
Regression
- Slide from ‘David Sliver’
AlphaGo의 게임 트리 탐색(MCTS) 과정
Q: MCTS action value, u(P): Policy network이 제공하는 확률(P)에 비례, 방문 회수에 반비례하는 함수
a. 특정 단계(L-1)까지 착수 선택: Q + u(P) 최대값 선택,
b. 탐색 경로 L단계까지 확장 : 확률(P 𝜎)에 따른 노드 확장
c. 확장한 L단계 노드의 승률 평가: Value network의 value(v 𝜃)와 Rollout policy로 게임 종료까지
시뮬레이션(P 𝜋)하여 평가한 값(r)을 결합하여 승률 평가
d. 바둑 게임 트리의 상태 갱신: 선택 노드에 있는 Q 값 갱신
L 단계 è
참고문헌
1. [Nature] Mastering the game of Go with deep neural networks and tree search
2.[SPRi] AlphaGo의 인공지능 알고리즘 분석
3. [NIPS] Policy Gradient Methods for Reinforcement Learning with Function
Approximation
4.[WIKIPEDIA] Reinforcement learning
감사합니다.

More Related Content

PDF
알파고 (바둑 인공지능)의 작동 원리
PDF
알파고 풀어보기 / Alpha Technical Review
PDF
알파고 해부하기 1부
PDF
알파고의 알고리즘
PDF
알파고 해부하기 2부
PDF
Google AlphaGo, 어떻게 동작할까요?
PDF
알파고 해부하기 3부
PDF
最近のDQN
알파고 (바둑 인공지능)의 작동 원리
알파고 풀어보기 / Alpha Technical Review
알파고 해부하기 1부
알파고의 알고리즘
알파고 해부하기 2부
Google AlphaGo, 어떻게 동작할까요?
알파고 해부하기 3부
最近のDQN

What's hot (20)

PPTX
DDPG algortihm for angry birds
PDF
Soft Actor-Critic Algorithms and Applications 한국어 리뷰
PPTX
Prml 最尤推定からベイズ曲線フィッティング
PDF
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
PDF
Safe Reinforcement Learning
PDF
直交領域探索
PDF
파이썬과 케라스로 배우는 강화학습 저자특강
PDF
[226]대용량 텍스트마이닝 기술 하정우
PPTX
Deep Recurrent Q-Learning(DRQN) for Partially Observable MDPs
PDF
딥러닝의 기본
PDF
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
PPTX
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)
PDF
[DL輪読会]陰関数微分を用いた深層学習
PDF
강화학습 알고리즘의 흐름도 Part 2
PDF
머신러닝 해외 취업 준비: 닳고 닳은 이력서와 고통스러웠던 면접을 돌아보며 SNU 2018
PDF
Iclr2016 vaeまとめ
PPTX
【解説】 一般逆行列
PDF
추천시스템 이제는 돈이 되어야 한다.
PDF
[DL輪読会]Neuroscience-Inspired Artificial Intelligence
PDF
ゼロから始めるレコメンダシステム
DDPG algortihm for angry birds
Soft Actor-Critic Algorithms and Applications 한국어 리뷰
Prml 最尤推定からベイズ曲線フィッティング
강화학습 해부학 교실: Rainbow 이론부터 구현까지 (2nd dlcat in Daejeon)
Safe Reinforcement Learning
直交領域探索
파이썬과 케라스로 배우는 강화학습 저자특강
[226]대용량 텍스트마이닝 기술 하정우
Deep Recurrent Q-Learning(DRQN) for Partially Observable MDPs
딥러닝의 기본
자습해도 모르겠던 딥러닝, 머리속에 인스톨 시켜드립니다.
딥 러닝 자연어 처리를 학습을 위한 파워포인트. (Deep Learning for Natural Language Processing)
[DL輪読会]陰関数微分を用いた深層学習
강화학습 알고리즘의 흐름도 Part 2
머신러닝 해외 취업 준비: 닳고 닳은 이력서와 고통스러웠던 면접을 돌아보며 SNU 2018
Iclr2016 vaeまとめ
【解説】 一般逆行列
추천시스템 이제는 돈이 되어야 한다.
[DL輪読会]Neuroscience-Inspired Artificial Intelligence
ゼロから始めるレコメンダシステム
Ad

Viewers also liked (15)

PPTX
기계학습 / 딥러닝이란 무엇인가
PDF
Deep learning framework 제작
PPTX
CNN(Convolutional Neural Nets) backpropagation
PPTX
딥러닝 - 역사와 이론적 기초
PDF
인공지능
PDF
Game AI Overview
PDF
Deep Learning for Stock Prediction
PDF
[222]대화 시스템 서비스 동향 및 개발 방법
PDF
Reinforcement Learning (DLAI D7L2 2017 UPC Deep Learning for Artificial Intel...
PDF
Introduce Deep learning & A.I. Applications
PDF
Stock Prediction Using NLP and Deep Learning
PDF
의료에서의 인공지능 정리 파일 김치원 V5
PPTX
8월 24일 인공지능 사업화 세미나: IoT 스마트팩토리 솔루션 - 스태프프로젝트
PDF
4차 산업혁명과 인공지능
PDF
인공지능개론 (머신러닝 중심)
기계학습 / 딥러닝이란 무엇인가
Deep learning framework 제작
CNN(Convolutional Neural Nets) backpropagation
딥러닝 - 역사와 이론적 기초
인공지능
Game AI Overview
Deep Learning for Stock Prediction
[222]대화 시스템 서비스 동향 및 개발 방법
Reinforcement Learning (DLAI D7L2 2017 UPC Deep Learning for Artificial Intel...
Introduce Deep learning & A.I. Applications
Stock Prediction Using NLP and Deep Learning
의료에서의 인공지능 정리 파일 김치원 V5
8월 24일 인공지능 사업화 세미나: IoT 스마트팩토리 솔루션 - 스태프프로젝트
4차 산업혁명과 인공지능
인공지능개론 (머신러닝 중심)
Ad

Similar to AlphaGo 알고리즘 요약 (20)

PDF
[RLPR] Mastering the game of go with deep neural networks and tree search
PDF
Alpha Go Introduction
PPTX
AlphagoZero
PDF
Mu zero review by nomoreid
PPTX
한국인공지능연구소 강화학습랩 결과보고서
PDF
Reinforcement learning v0.5
PDF
바둑인을 위한 알파고
PDF
20160409 microsoft 세미나 머신러닝관련 발표자료
PDF
스타크래프트2 강화학습(StarCraft II Reinforcement Learning)
PDF
Rl from scratch part4
PPTX
강화학습 & Unity ML Agents
PDF
Monte-Carlo Go Overview
PPTX
딥러닝에 다가가기 (Ai 스쿨 2017)
PPTX
인공지능, 기계학습 그리고 딥러닝
PDF
RLCode와 A3C 쉽고 깊게 이해하기
PDF
Workshop 210417 dhlee
PDF
대칭가중치와 심층신뢰네트워크
PPTX
ML + 주식 phase 2
PDF
From maching learning to deep learning
[RLPR] Mastering the game of go with deep neural networks and tree search
Alpha Go Introduction
AlphagoZero
Mu zero review by nomoreid
한국인공지능연구소 강화학습랩 결과보고서
Reinforcement learning v0.5
바둑인을 위한 알파고
20160409 microsoft 세미나 머신러닝관련 발표자료
스타크래프트2 강화학습(StarCraft II Reinforcement Learning)
Rl from scratch part4
강화학습 & Unity ML Agents
Monte-Carlo Go Overview
딥러닝에 다가가기 (Ai 스쿨 2017)
인공지능, 기계학습 그리고 딥러닝
RLCode와 A3C 쉽고 깊게 이해하기
Workshop 210417 dhlee
대칭가중치와 심층신뢰네트워크
ML + 주식 phase 2
From maching learning to deep learning

AlphaGo 알고리즘 요약

  • 2. 바둑(or 체스) 인공지능 프로그램 기본 • 게임 경우의 수 탐색 à 트리(tree) 탐색 알고리즘 (e.g. 깊이 우선 탐색, 넓이 우선 탐색 알고리즘) 체스의 게임 트리 예시 트리 탐색 예시
  • 3. 바둑이 쉽게 정복되지 않은 이유 • 10360 가지 경우 수 존재 • 바둑 규칙을 고려한 평균 경우 수가 250개, 바둑 평균 약 150수 정도. 따라서, 250150 ≈ 10360 • 우주의 원자 개수(1080)보다 많은 경우 수! • 현재의 컴퓨팅 파워로 정복하기 어렵다는 평가였음 • 1997년 체스 세계 챔피언 카스파로프를 이긴 IBM Deeper Blue는 Brute force 방식으로 게임 트리 Full search • 따라서, 바둑 정복을 위해서 게임 트리의 탐색 범위를 줄이는 방법 필요
  • 4. AlphaGo 알고리즘 아웃라인 • 게임 트리 탐색 방법: 몬테카를로 트리 탐색(Monte Carlo tree search, MCTS) • 현재 많은 인공지능 바둑 프로그램(e.g. Crazy Stone, Zen 등)이 채택한 게임 트리 탐색 알고리즘 • 현재 상태(selection)에서 한 단계 예측(Expansion) 후 시뮬레이션(Simulation)한 최종 결과에 따른 트리 상태 정보 업데이트(Backpropagation). 이 과정을 X 번 반복 à 모든 경로 탐색 불가능시 효율적 • 게임 트리 탐색 범위 줄이는 방법: AlphaGo 핵심 알고리즘 • 넓이 탐색 범위 줄이기 : 현재 상태에서 다음 착수 위치 찾기 à MCTS의 Expansion • 깊이 탐색 범위 줄이기 : 해당 착점의 승률 계산 à MCTS의 Simulation
  • 5. AlphaGo 핵심 알고리즘 (1/2) • 게임 트리의 넓이 탐색 범위 줄이기: 착수 위치 찾기 1) 바둑 기보 패턴 학습 à SL policy network으로 명명 • Convolutional Neural Networks(ConvNet)로 약 3천만 KGS 기보 학습 • Deep Learning 알고리즘 중 하나인 ConvNet은 이미지 패턴 인식에 탁월하며 지도 학습(Supervised Learning, SL)에 해당 • P(a|s)를 최대화하는 방향으로 ConvNet 학습, [P(a|s)는 상태(status, s)에 따른 다음 수 행위(action, a) 확률] 2) 학습한 기보에만 최적화되는 것을 방지하기 위해 자가 대국(self play)으로 강화 학습 à RL policy network으로 명명 • 기보 패턴을 학습한 ConvNet들간 대국으로 승패에 따른 강화 학습1)(Reinforcement Learning, RL) 실행 • Policy Gradient 강화 학습 알고리즘 적용. 이는 강화학습의 Q-function과 같은 reward score 함수 구하기가 아닌 P(a|s)를 직접 구 하는 방법 [policy(s) = arg maxa Q(s, a)] • P(a|s)를 최대화하는 방향으로 ConvNet 학습 3) 단순 패턴 인식 à Rollout policy으로 명명 • 바둑 규칙에 따른 단순 P(a|s) 확률 계산 • SL policy network, RL policy network, Rollout policy를 조합하여 사용 주1) 강화 학습은 결과에 따른 reward score를 부여함: E.g. 승리하면 +1, 패배하면 -1
  • 6. AlphaGo 핵심 알고리즘 (2/2) • 게임 트리의 깊이 탐색 범위 줄이기: 해당 착점의 승률 • 앞서 만든 RL policy network으로 승률 계산하는 ConvNet 학습 à Value network으로 명명 • RL policy network에서 확률 함수 대신에 reward score 함수(e.g. Q-function) 정의 • Reward score 예측이 잘 맞는 방향으로 KGS 기보 학습 • Deep Q Network 강화 학습과 유사한 형태로 앞서 RL policy network의 Policy Gradient 알고리즘과 다름 • 학습한 KGS 기보에 최적화되는 것을 방지하기 위해 신규로 자가 대국(self play)한 기보로 학습 • RL policy network들간 자가 대국 후 생성된 기보로 Value network 학습
  • 7. AlphaGo의 deep neural network 학습 파이프라인 Human expert positions Classification SL Policy network Self Play RL Policy network Self Play Self-play data Value network Regression - Slide from ‘David Sliver’
  • 8. AlphaGo의 게임 트리 탐색(MCTS) 과정 Q: MCTS action value, u(P): Policy network이 제공하는 확률(P)에 비례, 방문 회수에 반비례하는 함수 a. 특정 단계(L-1)까지 착수 선택: Q + u(P) 최대값 선택, b. 탐색 경로 L단계까지 확장 : 확률(P 𝜎)에 따른 노드 확장 c. 확장한 L단계 노드의 승률 평가: Value network의 value(v 𝜃)와 Rollout policy로 게임 종료까지 시뮬레이션(P 𝜋)하여 평가한 값(r)을 결합하여 승률 평가 d. 바둑 게임 트리의 상태 갱신: 선택 노드에 있는 Q 값 갱신 L 단계 è
  • 9. 참고문헌 1. [Nature] Mastering the game of Go with deep neural networks and tree search 2.[SPRi] AlphaGo의 인공지능 알고리즘 분석 3. [NIPS] Policy Gradient Methods for Reinforcement Learning with Function Approximation 4.[WIKIPEDIA] Reinforcement learning