알파고
[AlphaGo]구글의 인공지능개발 자회사인 구글 딥마인드(Google DeepMind)가 개발한 바둑 인공지능 프로그램.
중국의 바둑 규칙인 중국 룰을 사용해 개발됐다. 정책망과 가치망이라는 두 가지 신경망을 통해 결정을 내리며 머신러닝을 통해 스스로 학습하는 기능을 가지고 있다.
알파고는 다른 바둑 프로그램들과 총 500회 대국을 벌여 499회 승리하기도 했다. 2015년 10월에는 유럽바둑대회 3회 우승자인 판 후이(Fan Hui) 2단을 상대로 대국, 5전 전승하였다. 이 승리는 인공지능 프로그램이 전문바둑기사를 상대로 거둔 사상최초의 승리였다.
하지만 알파고가 전세계의 이목을 집중시킨 것은 2016년 3월9일부터 15일까지 이세돌 9단과 폁친 세기의 바둑대결이 계기가 됐다. 경기전에 이세돌 9단이 우세할 것이라는 의견이 지배적이었지만 알파고가 4대 1의 대승을 거두었다. 알파고의 승리는 한국은 물론 전세계에 엄청난 충격을 몰고 왔다. “인공지능이 인간을 지배하는 세상이 올 것”이라는 두려움마저 생겼다.
이 후에도 알파고는 세계 최정상의 기사들을 상대로 전승을 거두고 있다. 2016년 12월 29-31일 알파고는 한국 인터넷 바둑 사이트에서 ‘매지스터(Magister)’라는 아이디로 중국 랭킹 1위인 커제, 한국 랭킹 1위 박정환 9단 일본 랭킹 1위인 이야마 유타 9단 등 세계 최고수들과 30판의 대국을 펼쳐 모두 이기는 괴력을 발휘했다.
2017년 5월에서 세계 바둑 랭킹 1위인 커제를 격파하기도 했다. 알파고는 5월 23일 중국 저장성 우전 국제인터넷컨벤션센터에서 열린 '바둑의 미래 서밋' 3번기 제1국에서 세계 바둑랭킹 1위 커제 9단을 상대로 289수 만에 백 1집 반승을 거뒀다.
정책망과 가치망
1997년 IBM의 슈퍼컴퓨터 딥블루가 세계 체스 챔피언 가리 카스파로프와 대결에서 승리하며 인공지능에 대한 관심을 끌기는 했지만 바둑은 컴퓨터 인공지능이 도전하기에는 버거운 분야로 여겨졌다. 체스가 한 위치마다 가능한 수가 평균 20개 정도라면 바둑은 200여개나 될 정도로 복잡하기 때문이다. (바둑판에서의 경우의 수는 10의 170승으로 전 세계 원자 수 보다 더 많다고 한다.)
수많은 경우의 수에서 선택을 하기위해 알파고는 정책망과 가치망이라는 네트워크 프로세스를 이용한다. 수의 위치를 계산하는 정책망으로 탐색의 범위를 좁힌 뒤, 가치망으로 승률이 가장 높은 수를 판별해낸다. 이 두 네트워크가 서로 얽혀가며 바둑판에서 상대 수를 읽고 확률을 측정해 다음 수를 두게 된다.
또한 알파고는 머신러닝을 통해 스스로 학습한다. 알파고는 2015년 10월 판후이 2단과 대국을 치른 이후 대폭 업그레이드된 것으로 전해졌다. 데미스 허사비스 구글 딥마인드 최고경영자(CEO)는 2016년 3월 8일 기자회견에서 “알파고가 자기학습으로 지난 5개월 동안 스스로 학습하면서 더 많은 양질의 데이터를 생성하고 이를 바탕으로 시스템이 향상됐다“고 말했다.
알파고의 하드웨어
알파고는 구글의 클라우드 폼에서 작동한다. 미국 중서부에 있는 서버에서 대국장으로 연결되는 네트워크가 알파고의 신경망 역할을 해 한국에 있는 이세돌과 대국한다.
다른 바둑 전문 프로그램들과 대결을 벌이던 알파고 초기 시절 알파고는 총 48개의 CPU를 사용한 것으로 알려졌다. 하지만 인간과 대결을 준비하면서 사양을 크게 높였다. 2015년 판후이 2단을 완패시킬때 사용됐고 이번 이세돌 9단과의 대국에 사용되고 있는 컴퓨터는 최고 사양의 기업용 서버 300대를 병렬로 연결한 것으로 슈퍼컴퓨터에 해당한다.
최고 사양의 서버 한 대엔 ‘두뇌’인 인텔의 중앙처리장치(CPU) 네 개와 이를 지원하는 삼성전자의 D램 모듈 48개가 탑재된다. 이를 바탕으로 추정하면 알파고엔 CPU 1202개가 들어간 것으로 보인다.
여기에 64기가바이트(GB) D램 모듈이 탑재됐다고 가정하면 서버 한 대당 D램 용량은 3테라바이트(TB)가 넘는다. 이에 따라 알파고에는 923TB 용량의 모듈이 들어간 것으로 분석된다. 현재 고사양 서버에 들어가는 주력 D램인 20나노 8기가비트(Gb) DDR4로 나눠 계산하면 모두 92만3136개의 D램이 쓰인 셈이다. 각 서버에 에러를 대비해 D램 모듈이 하나씩 더 탑재되는 것까지 감안하면 103만8000개가 들어간 것으로 추정된다.
그래픽을 담당하는 그래픽처리장치(GPU) 176개나 사용했다. CPU에 GPU를 더해 사용하면 CPU만 탑재한 것보다 수십배 연산 속도가 빨라지고 발열도 적기 때문이다. 이외에 사용된 낸드 플래시 메모리를 합치면 총 106만개 이상의 반도체가 쓰인 것으로 관측된다.