오늘 바둑 티비에 출연했던 교수님 페북에서 퍼옴.
바둑TV 대담이 막 방송 됐네요. 다소 깊이 들어간 내용은 대개 편집됐습니다. 제가 했던 얘기들을 생각나는 대로 모두 여기 올립니다.
1. 이번 대결을 어떻게 보는가?
인공 지능 컴퓨터와 인간의 대결은 저에게 각별한 의미가 있습니다. 1997년 물리학에 흥미를 잃고 방황하던 중에 IBM의 슈퍼 컴퓨터 딥블루가 세계 체스 챔피언 개리 카스파로프를 이기는 것을 TV에서 보고, 저도 언젠가는 IBM에서 슈퍼 컴퓨터를 만들고 싶다는 막연한 희망을 품고 전공을 물리학에서 전자공학으로 바꿨습니다.
그리고 그 막연했던 희망이 저를 이끌었는지, 학부를 마치고 공부를 계속해서 석사, 박사 학위를 받은 다음, 10년 뒤인 2007년에 뉴욕의 IBM 연구소에 입사하게 됩니다. 거기서는 왓슨이라는 슈퍼 컴퓨터를 만들었어요. 이것이 2011년에 제퍼디라는 퀴즈 쇼에서 역대 최고의 출연자 두 명을 압도적으로 이깁니다. 그리고 저는 곧 귀국해서 대학생들을 가르치고 있는데요.
제가 본업 못지 않게 관심이 많은 분야가 바로 바둑입니다. 이제 네 돌 지난 쌍둥이가 있거든요. 최근에는 어린이집에 보내면서 많이 편해졌지만 지난 한 3년 간은 정말 힘들었어요. 그 때 큰 힘이 되어준 것이 바로 바둑입니다. 애들 재우고 나면 바둑TV를 봤어요. 지쳐서 곧 곯아떨어지긴 했지만…… 또다시 인공 지능 컴퓨터와 인간이 대결하는데, 그 종목이 바로 바둑이다! 정말 또 한번의 인생의 변곡점 위에 서 있는 느낌입니다. 인공 지능이 발전을 거듭하면 언젠가 이 날이 올 줄 알았지만, 너무 갑작스러운 감이 있죠.
2. 인공 지능의 발전에 대해 어떻게 생각하는가?
스탠리 큐브릭 감독이 <2001년 스페이스 오디세이>를 만든 것이 1968년입니다. 그 영화에 나오는 컴퓨터 HAL 9000이 1997년에 만들어지는 것으로 설정돼 있어요. 즉, 당시로부터 30년 정도 지나면 자의식이 있는 컴퓨터가 등장할 것으로 본거죠. 인공 지능의 아버지라 여겨지는 마빈 민스키 교수도 이 당시 “한 세대 안에 인공 지능을 창조하는 문제의 대부분이 해결될 것이다.”라고 공언할 정도였어요. 이 때가 인공 지능 연구의 1차 황금기로 분류됩니다.
그러다가 1970년대 들어 사람과 비슷한, 소위 ‘강한 인공 지능’ 개발은 벽에 부딪히고 인공 지능 연구는 암흑기를 맞아요. 1980년대 인공 지능 연구의 두 번째 호황기는 훨씬 더 현실적인 목표를 가지고 시작됐습니다. 강한 인공 지능의 구현은 당장 너무 어려우니, 실용적인 성과를 낼 수 있는 작은 문제들을 먼저 해결한 다음 큰 그림으로 다시 합쳐보자는 것이었습니다. 인공 지능이라는 단어 자체를 의도적으로 쓰지 않으려고 했어요. 그러면 연구비를 못 따니까…… 그보다는 특정 문제를 푸는 도구로 인식되었죠. 그나마도 몇몇 분야를 제외하고는 1980년대 후반에 2차 암흑기를 맞습니다.
지금 우리는 인공 지능 역사에 있어서 세 번째 낙관의 시대 중심에 서 있습니다. 접근 방법 자체는 예전과 변한 게 별로 없지만, 엄청나게 발전한 컴퓨터 하드웨어와 기계 학습에 필요한 방대한 디지털 데이터 덕분에 전에는 아이디어로만 머물렀던 것이 이제는 구현 가능하게 됐어요. 체스 컴퓨터, 그림을 그리는 컴퓨터, 의료 진단을 하는 컴퓨터 등 인간의 지능적 행동의 특정 측면을 흉내 내는데 눈부신 성과를 거둔 분야도 있지요. 그러나 아직 컴퓨터는 세상을 살아가는데 필요한 전략을 마련한다거나 어떤 이론을 개발하는 작업처럼 창의성과 상상력이 필요한 작업에는 서툽니다. 인공 지능 학계의 주류 견해는 ‘약한 인공 지능’은 머지 않아 달성할 수 있지 않을까 기대하는 정도입니다.
3. 구글이 바둑에 도전한 이유는?
보드 게임은 인간의 다양한 지능적 활동 중에 경우의 수는 많지만 규칙 자체는 간단하므로 컴퓨터의 계산 능력이 빛을 발할 수 있는 분야로 여겨져 수십 년 전부터 인공 지능 연구자들의 주요 활동 무대였습니다. 각종 인공 지능 기술의 시험 무대로 삼은 거죠. 특히, 바둑은 경우의 수가 압도적으로 많아 보드 게임의 ‘끝판왕’으로 여겨졌습니다. 각종 알고리즘이 오목과 같은 단순한 보드 게임을 대상으로 개발되고, 체스에 적용한 다음, 바둑에 도전하는 것을 최종 목표로 삼아요. 그래서 구글 뿐만 아니라 페이스북, 아마존과 같은 일류 기업들이 바둑 컴퓨터를 경쟁적으로 개발하던 상황입니다. 자사의 기술력을 홍보하는 장으로 활용하는 것이죠. 구글에게 100만불은 푼돈입니다. 이번 대결에 얼마나 많은 관심이 집중되었습니까? 이미 그 수백 배의 광고 효과를 거뒀지요.
알파고에 적용된 기술들을 일차적으로는 구글 매출의 가장 큰 부분을 차지하는 온라인 광고를 더욱 효과적으로 집행하기 위해 활용하겠지요. 실제로 이들간에 유사한 점이 많아요. 구글은 딥마인드를 인수하기 전에도 또 다른 인공 지능 벤처인 DNNResearch를 인수했고, 로봇 공학 회사만 8군데를 인수했습니다. 이 엄청난 합병 규모로 볼 때 구글의 목표가 단순히 검색 엔진을 업그레이드하는 것을 넘어, 세상과 물리적으로 상호작용 할 수 있는 로봇에까지 닿아있다는 점은 분명해 보여요. 돈이 많으니까 이것저것 다 해볼 수 있는 거죠. 당장은 아니더라도 먼 미래의 사업에 도움될 가능성이 있는, 일종의 포트폴리오를 갖추는 것이지요.
4. 기존 바둑 프로그램과 알파고의 차이점은?
1) 몬테 카를로 탐색 기법
알파고 이전에 최고로 꼽히던 바둑 프로그램에는 크레이지스톤과 젠 등이 있습니다. 이들도 알파고와 마찬가지로 몬테 카를로 탐색 기법을 갖추고 있어요. 수읽기를 할 때 그 이후에 파생되는 경우의 수를 모두 탐색해야 한다면, 바둑은 경우의 수가 너무 많아서 아무리 강력한 계산력을 지닌 컴퓨터라도 한정된 시간 내에는 전체 탐색 공간의 극히 일부 밖에 탐색할 수 없습니다. ‘몬테 카를로’라는 말은 표본 추출을 의미해요. 선거 결과를 예상할 때 전수조사를 하는 것이 불가능하므로 유권자의 일부를 표본으로 추출해서 여론 조사를 하는 것과 마찬가지입니다. 이 수 이후에 전개될 수 있는 경우가 10,000가지 있다고 하면 그 중에 10가지만 임의로 골라서 종국까지 시뮬레이션 해보는 것입니다. 그 결과 10번 중에 8번이 패배로 이어졌다면 그 수는 나쁜 수일 가능성이 농후한 거죠. 1,000개 중에 1개, 10,000개 중에 10개만 샘플링 했을 때는 표본의 특성이 전체의 특성과 다르게 나타날 가능성을 무시할 수 없지만, 100,000개 중에 100개, 1,000,000개 중에 1,000개 하는 식으로 숫자가 커지면 예외적인 상황이 발생할 확률은 급격히 떨어집니다. 1997년의 딥블루는 체스만을 위해 제작된 슈퍼 컴퓨터로서 초당 2억 개의 기물 이동을 계산할 수 있었습니다. 그러나 요즘에는 스마트폰에서 돌아가는 체스 프로그램도 세계 챔피언을 이기는데, 그것은 몬테 카를로 기법 덕분에 탐색 공간이 큰 폭으로 줄어든 덕분입니다.
그러나 바둑의 초반 포석 단계에는 빈 곳이 너무 많아서 수읽기만으로는 도저히 풀어갈 수 없지요. 기존의 바둑 프로그램은 정석을 데이터베이스화해서 초반을 그럭저럭 넘겨보자고 했습니다. 최대 2만여 개 정도로 알려진 정석을 모조리 외우는 것은 컴퓨터에게 아주 쉬운 일이에요. 그런데 문제는 정석도 부분적으로 봤을 때 쌍방 최선의 진행이라는 것이지, 주위의 배석에 따라 정석의 유불리가 엄청나게 달라진다는 점이에요. 그래서 바둑에서는 “정석을 공부하되 그 의미를 깨우친 다음에는 정석을 잊어버리라”고 가르치지 않습니까?
바둑 기술의 절반이 수읽기라면 나머지 절반은 소위 ‘감각’이라고 부르는, 모양/패턴에 대한 이해력입니다. 고수는 수읽기를 할 때도 감각을 바탕으로 안될 법한 수는 일찌감치 가지치기하고 될 법한 수만 집중적으로 따져봅니다. 즉, 탐색 공간을 몬테 카를로 기법보다 훨씬 더 효과적으로 줄여나가요. 특히, 초반 포석 단계에서는 수읽기보다는 감각 위주로 수를 결정합니다. 알파고는 기존 몬테 카를로 탐색 엔진에다가 사람의 감각을 흉내내기 위해, 패턴 인식 분야에서 뛰어난 성과를 거두고 있던 딥러닝 기법을 접목한 것입니다.
2) 딥 러닝 기법
패턴 인식 혹은 인지 분야는 계산 분야와는 달리 컴퓨터가 매우 취약했던 분야였습니다. 사진을 보고 개와 고양이를 구별해내는 것은 다섯 살 된 어린 아이에게 아주 쉬운 일이지요. 그런데 개와 고양이를 구분하는 기준을 컴퓨터가 이해할 수 있도록 한 번 만들어보세요. 고양이가 개보다 꼬리가 긴 편이다! -> 그런데 컴퓨터는 꼬리를 찾지 못한다? -> 몸통에서 폭이 갑자기 좁아지는 부분이 꼬리다! -> 그럼 몸통은? -> 다리와 꼬리는 어떻게 구분하지? …… 이런 난관을 극복하고 겨우 컴퓨터가 꼬리를 찾을 수 있게 한다고 하더라도, 이런 규칙으로는 불행한 사고로 꼬리가 잘린 고양이는 절대 구분해내지 못합니다. 그런데 우리 아이들한테는 이런 식으로 가르치지 않아요. 길 가면서 보이는 대로 이것은 고양이, 저것은 개 하는 식으로 몇 번 시범을 보여주면 아이들은 한 눈(직관)에 개와 고양이를 구분하는 것은 물론, 고양이가 개보다 꼬리가 긴 편이라는 특징까지 파악(통찰)해버립니다.
인공 신경망을 이용한 머신 러닝은 인간의 뇌가 동작하는 방식에 관해 우리가 알고 있는 사실에서 영감을 받아 만든 것입니다. 인간의 지능이 아무리 강력하고 신비한 존재라 하더라도, 물리적인 차원에서 보면 뇌 안에 시냅스로 연결된 뉴런들이 주고받는 전기 신호의 상호작용으로 벌어지는 현상이지요. 즉, 특정한 순간에 인간의 정신 상태는 복잡한 신경망 내에서 어떤 뉴런들이 활성화되어 있느냐로 나타낼 수 있습니다. 그렇다면 이러한 현상을 흉내 냄으로써 지능도 흉내 낼 수 있지 않을까 하는 발상이죠.
<자료화면 1> 여러분이 잘 아시는 파블로프의 ‘조건 반사 실험’입니다. 개에게 먹이를 줄 때마다 종소리를 들려주면 나중에는 종소리만 들어도 개가 침을 흘리게 된다는 실험이죠. 이 실험을 신경망 이론으로 설명하면 이렇게 됩니다. 원래 개는 음식을 봐야 침을 흘립니다. 이는 무조건적인 반사 행동으로, 뉴런 1이 시각 신호에 의해서 활성화되면 그 신호가 시냅스 1을 통해 뉴런 3에 전달되고 그 결과 침 분비 신호가 근육으로 보내져요. 그런데 개에게 음식을 줄 때마다 종소리를 들려주면, 시냅스 1이 활성화될 때마다 시냅스 2도 활성화되고, 이런 경험이 반복될수록 시냅스 2가 강화된다고 설명합니다. 나중에는 시각 신호 없이 청각 신호만 줘도 뉴런 2의 활성 상태가 시냅스 2를 통해 뉴런 3에 전달되고 결국 침이 분비되는 것이지요.
이 단순한 실험에 비해 바둑은 고도의 지능 활동입니다. 상대가 착수하면 우선 그 수가 내 돌을 단수치고 있는지, 아니면 축이나 장문으로 몰고 있는지 이런 단편적인 사실부터 파악하죠. 그 다음 주위 배석 관계를 살펴, 현재의 모양을 간략화해서 특징을 찾아내고, 기존에 배운 모양과 유추해서 급소를 찾아내지요. 최종적으로는 전판의 형세를 살펴야 됩니다. 부분적인 정수가 최선이 아닐 때도 종종 있어요.
<자료화면 2> 바둑에서 현재 상황으로부터 다음 수가 어떻게 결정되는지, 즉 입력과 출력 사이의 관계를 도저히 간단한 함수로 표현할 수는 없지만, 뭔가 추상적 사고가 단계 별로 진행되는 것 같으니, 인공 신경망의 입력과 출력 사이에 다수의 중간층을 둔 것입니다. 인공 신경망에서 ‘학습’이란 시행착오를 통해 각 연결의 강도, 즉 가중치를 찾는 과정입니다. 바둑판은 가로, 세로 각각 19줄이죠. 각 교차점마다 내 돌이 놓여있든지, 상대방 돌이 놓여있든지, 아니면 비어 있든지 3가지 경우가 가능하죠. 그러면 최소한 19 x 19 x 3, 벌써 천 개 이상의 입력 노드가 필요합니다. 또 공배가 얼마나 차 있는지에 따라 행마가 달라지지 않습니까? 그래서 각 교차점마다 그것을 둘러싸고 있는 8개 교차점이 비어있는지 여부를 별도의 입력으로 받습니다. 또, 초/중/종반에 따라 행마가 달라질 여지가 있으니까 이 수가 몇 수째인지도 별도의 입력으로 받고요. 여기에 축머리에 해당하는지, 착수금지 규칙을 위배하는지, 사석을 현재 몇 개 갖고 있고, 이 수를 진행하면 사석이 몇 개나 생길지 등등 총 19 x 19 x 48, 약 17,000개의 입력 노드를 썼어요. 그리고 중간층의 개수가 13개 입니다. 여기까지는 구글의 네이쳐 논문에 공개된 것이고요. 각 중간층마다 몇 개의 노드를 썼는지는 밝히지 않았습니다. 입력과 가까운 중간층 몇 개는 아마도 입력 노드 개수와 비슷한 개수의 노드를 갖고 있을 거라고 보면, 첫째 단 17,000개 노드 각각이 둘째 단 17,000개 노드 각각에 연결되어야 하므로 우리가 계산해야 될 가중치 개수는 벌써 3억 개에 육박합니다.
알파고는 KGS의 5~9단 유저들의 기보 16만 건에서 추출된 약 3천만 건의 데이터를 사용해서 수억 개의 가중치를 각종 최적화 기법으로 찾은 것입니다. 학습을 시작하기 전 인공 신경망은 무작위로 설정한 가중치를 갖고 있어요. 이를 갖고 입력 값을 처리했더니 옳지 않은 출력값(기보와 다른 착점)이 나왔다면, 이번 실수를 올바른 결과로 바로잡기 위해 자기가 가진 노드 가중치들을 조금씩 조정하는 것이 바로 인공 지능에서 말하는 ‘지도 학습’입니다.
지도 학습 과정이 끝나면 가중치 값들이 정해졌겠지요? 그러면 이번에는 ‘비지도 학습’ 과정을 거칩니다. 각 가중치들을 임의로 조금씩 바꿔보는 거에요. 그런 다음 바꾸기 전의 신경망과 대국을 시킵니다. 그랬더니 주로 이기더라 그러면 바꾼 가중치를 채택하고, 주로 지더라 그러면 그 가중치를 반대 방향으로 바꿔보던지, 그건 놔두고 다음 가중치를 바꿔보던지 하면서 이 과정을 반복하는 겁니다. 사람의 학습 방식과는 전혀 다르죠? 각각의 중간 노드와 연결 가중치가 어떤 의미를 갖는 지는 이 문제를 푸는 데 별로 중요하지 않아요. 딥 러닝 기법의 본질은 컴퓨터가 취약했던 고도의 인지 문제를, 컴퓨터가 강력한 힘을 발휘할 수 있는 계산 문제로 치환하는 데 있습니다.
3) 두 개의 신경망: ‘정책망’과 ‘가치망’
지금까지 설명한 것이 다음 수를 결정하는 ‘정책망’이고, 알파고는 하나의 신경망을 더 갖고 있습니다. 바로 ‘가치망’이죠. 몬테 카를로 기법 덕분에 탐색 공간이 이전에 비해 1/1000 수준으로 줄었지만 그래도 바둑은 경우의 수가 너무 많아서 슈퍼 컴퓨터한테도 여전히 부담이 되요. 또 한가지 문제는, 표본으로 추출된 경우의 수를 종국까지 진행시키면 그 때까지 두었던 수들의 목록이 생기지 않습니까? 그 중에는 좋은 수도 있고 나쁜 수도 있어요. 무작위로 추출했으니까. 시뮬레이션 결과 승리를 거뒀다고 해도, 이런 수들 중에 과연 어느 수가 승리로 이끌었는지 말할 방법이 없다는 거에요.
그래서 나온 아이디어가 종국까지 진행시킨 다음 결과를 보는 대신에, 현재로부터 몇 수만 진행시켜보고 그 상황에서 형세를 판단해보는 거에요. 역시 체스 컴퓨터에서 오래 전에 도입된 아이디어에요. 상대방 기물이 적게 남아 있으면 좋은 형세이고, 내 기물이 적게 남아 있으면 나쁜 형세라는 식이죠. 바둑에서는 확정가가 몇 집이고, 두터운 지 아니면 엷은 지 등이 되겠죠. 이러한 평가 함수를 프로그래머가 어떻게 설정할 것인가? 어렵지요. 최신 바둑 이론으로도 아직 두터움의 가치가 몇 집인지 정량적으로 말할 수 없지 않습니까? 그런데 딥 러닝에서는 정확한 평가 함수를 프로그래머가 몰라도 됩니다. 정책망의 비지도 학습 때와 마찬가지로 두 가지 버전의 프로그램을 대국시키는 거에요. 하나는 현재의 평가 함수를 그대로 사용한 것이고, 다른 하나는 현재의 평가 함수를 임의로 변경한 것이고. 만약 변경된 버전이 이기면 그 다음 실험에는 변경된 버전을 채택하는 것이고, 원래의 버전이 이기면 그것을 유지하는 것이죠. 이런 식으로 꽤 정확한 평가 함수를 찾아갈 수 있습니다.
정리하면, 기존의 바둑 프로그램은 수읽기에만 의존하면서 정석 데이터베이스로 초반을 보완했다면, 알파고는 수읽기에다가 감각과 형세판단 능력도 어느 정도 갖췄다고 보시면 되겠습니다.
5. 알파고의 상대로 이세돌 9단을 선택한 이유는?
일단 구글이 공식적으로 밝힌 이유는, 지난 10년간의 세계 대회 성적으로 볼 때 이세돌 9단이 독보적이었다는 것입니다. 커제 9단이 최근에 떠올랐지만, 중국이 정치적인 문제로 구글 접속을 막아놔서 어려움이 있겠죠.
또 한 가지 제 추측은, 알파고가 가장 취약한 부분이 바로 초반입니다. 오래 전부터 모든 체스 컴퓨터, 바둑 컴퓨터들에서 계속된 현상이에요. 경우의 수는 가장 많은 반면에 목표는 가장 불명확 하거든요. 초반의 바둑 이론은 어떻습니까? “실리와 세력의 균형을 맞춰라!” 이렇게 추상적인 목표는 인간만이 직관과 경험으로 이해할 수 있는 겁니다. 또 이런 지침을 이행할 창의적 방법을 무수히 생각해낼 수 있죠. 그래서 컴퓨터는 전략보다 전술이 더 중요하게 작용하는 진형을 원합니다.
이세돌 9단은 상대적으로 초반이 약하다는 평가를 받습니다. 그것을 중반에 탁월한 수읽기와 승부 호흡으로 극복하는 기사죠. 특히, 승부 호흡이나 흔들기는 아마도 역대 최강일 것 같은데요. 상대의 심리도 잘 이용하고, 종종 시간 공격도 하지요. 반면에 초반 포석이 아주 강해서 여기서 약간 차이를 벌이고 나면, 이후 적당히 타협해서 종국까지 소위 ‘잘 닦는’ 기사들이 있지요. 조한승 9단이나 전성기의 이창호 9단 같은. 알파고로서는 이런 스타일을 상대하기가 더 어려울 겁니다.
6. 알파고 vs 판후위 2단 대결을 본 소감은?
기존의 바둑 컴퓨터는 저와 비슷한 실력이었는데, 알파고가 이를 몇 단계 뛰어 넘었다는 것은 바로 알 수 있었습니다. 컴퓨터한테서 종종 나오는 이상한 수도 보이지 않아서, 누가 사람이고 누가 컴퓨터인지 구분하기 어려웠고요. 모양이 잘 정돈된, 과거 일본 바둑을 보는 느낌이었습니다. 최근의 한/중 프로기사들의 바둑은, 특히 이세돌 9단의 바둑은 해설 없이는 이해가 안 되는 대목이 많은데 알파고의 바둑은 아마추어로서 이해하기 쉬웠어요.
기대했던 대로 모양에 따른 급소를 대체로 잘 찾아내는 것으로 보였고요. 하지만 때로는 모양에 너무 치우친 수를 두기도 했습니다. 즉, 사활이 걸렸을 때에는 모양이 최우선은 아니고, 또 부분적인 모양에서 최선은 아니더라도 선수를 뽑기 위해 임기응변으로 처리해야 될 장면도 있잖아요. 이런 면에서 알파고는 아직 부족한 모습을 수 차례 드러냈습니다.
7. 알파고의 기풍은?
판후위 2단과의 대국에서 알파고는 초반에 승부를 걸기 보다는 적절히 타협하면서 후반을 도모하는 바둑을 구사했습니다. 아무래도 초반보다는 뒤로 갈수록 강하니까요.
그런데 신경망의 지도 학습 단계에 사용하는 데이터가 달라지면, 그 결과 합성되는 신경망도 달라집니다. 특정한 기풍을 가진 기사들의 기보 중심으로 학습한다면, 그와 비슷한 기풍이 장착될 개연성이 있습니다.
8. 알파고도 승부수를 던질 수 있을까?
바둑에는 신경전의 요소도 있거든요. 초반에 상대가 연구해온 것으로 의심되는 포석을 펼치지 못하도록 방해한다든지, 다음 수가 정확히 안 보일 때 일단 상대방이 제일 싫어할 것 같은 곳에 둔다든지…… 뭐 그런다고 해서 내가 유리해진다는 보장은 없지만요. 또, 형세가 여의치 않으면, 약간 무리 같기도 하지만 상대가 자칫 실수하기 쉬운 수, 프로들이 쓰는 용어로 ‘까실하다’고 하나요? 컴퓨터는 이런 수보다는 그 장면에서 최선의 수를 두려고 노력합니다.
그런데 이런 것도 별도의 알고리즘으로 바꿀 수 있어요. 딥블루는 인간이 두는 것처럼 체스를 뒀거든요. 판후위 2단이 거의 매판 초반에 워낙 망하는 바람에 이런 것을 확인할 기회가 없었던 것이 아쉽습니다. 이세돌 9단과의 대국에서 알 수 있겠지요.
9. 알파고의 수준이 얼마만큼 성장했을까?
많은 분들께서 알파고의 ‘학습’ 능력에 막연한 두려움을 갖고 계세요. 알파고가 무려 16만 개의 기보를 몇 주 만에 학습했다는 얘기 때문에요. KGS라는 인터넷 바둑 사이트 5단에서 9단까지의 대국이라고 하니, 저 같은 하수들의 기보도 잔뜩 섞여 있지요. 판후위 2단과의 대국이 벌어졌던 작년 10월 이후 약 5개월 동안, 일류 프로들의 기보 만으로 학습하면 훨씬 실력이 나아지지 않을까 하는 의문이 드는 거지요.
아마추어의 인터넷 바둑에 온갖 ‘떡수’가 난무함을 구글이 모를 리가 없어요. 그런데 왜 그런 기보를 갖다 썼겠습니까? 앞서 말씀 드린 것처럼, 인공 신경망에게 학습이란 각 노드 간 연결 가중치를 계산하는 작업입니다. 계산해야 될 미지수가 수억 개가 될 것으로 예상됩니다. 중학교 때 연립 방정식을 배웁니다. 미지수가 두 개면 식도 두 개가 있어야 풀 수 있어요. 딥 러닝에서는 방정식을 대수적으로 푸는 대신 각종 최적화 기법을 사용하기 때문에 정확한 비유는 아닙니다만, 미지수가 많으면 학습에 요구되는 데이터 양도 그만큼 많이 필요하다는 정도로 이해하시면 되겠습니다. 그러니까 알파고의 학습 능력이 너무 뛰어나서 기보를 16만 개나 학습했다기 보다는, 알파고를 학습시키려다 보니 기보가 최소한 16만 개는 필요했고, 그것을 프로나 아마 최고수들의 기보 만으로는 채우지 못해서 인터넷 바둑 8단, 7단 내려오다가 5단의 기보까지도 울며 겨자 먹기로 학습했다고 봐야 합니다. 일류 프로의 기보 만으로는 숫자가 부족해 신경망을 처음부터 새로 학습시키기는 불가능하고, 기존의 알파고를 일부 튜닝하는 정도겠습니다.
구글이 취할 수 있는 전략은 작년 10월 시점의 알파고, 편의상 알파고1이라고 하겠습니다, 알파고1이 이미 상당한 기력을 갖췄으므로 자체 대국을 시켜 기보를 대량 생산해내는 것입니다. 알파고2의 학습에 필요한 데이터를 우선 프로의 기보로 채우고, 모자라는 만큼을 알파고1의 기보로 채우는 거죠.
두 번째로 구글은 하드웨어를 대폭 업그레이드해서 나올 겁니다. 알파고1은 1200개의 CPU와 176개의 GPU를 장착하고 있었는데요. GPU 개수를 대폭 늘리면 수읽기가 좀 더 빨라지는 효과가 있습니다. 이번 대결 조건에 알파고의 스펙에 관한 어떠한 제한도 없으니까요.
그러나 이런 조치들 만으로 판후위 2단과의 대국에서 보였던 알파고의 약점들이 근본적으로 개선될 것 같지는 않습니다.
10. 중국 정상급 기사가 미묘한 시점에 영국에 여행을 갔다는데?
구글이 이세돌 9단에 필적할 만한 초일류 기사의 자문을 구하는 것은 당연한 겁니다. 알파고를 일류 프로 수준으로 끌어올리는 작업은 지난한 시행착오의 과정일 겁니다. 두 신경망의 가중치들을 하나씩 조정해가면서 알파고가 다양한 변화에 어떻게 대응하는지 살펴야 하고요. 또 바둑 기술 외에도 예를 들면, 주어진 생각 시간을 초, 중, 종반에 어떻게 할당하는 것이 경기력을 최고로 끌어올릴 수 있는지도 시험해야겠고요. 이러한 과정에서 종종 전혀 예상치 못한 수가 튀어나올 수 있습니다. 이 수는 과연 논리적인 계산의 결과인지, 아니면 프로그램의 버그인지 판단해야 하죠. 알파고의 기력이 발전할수록, 구글의 개발진으로서는 이러한 판단을 내리기 어렵습니다. IBM의 딥블루 개발팀은 미국 체스 챔피언 조엘 벤저민의 지원을 받았습니다. 카스파로프와 종종 비길 정도의 실력자였죠. 여기까지는 아무런 문제가 없죠.
카스파로프와 딥블루의 첫 판은 카스파로프가 싱겁게 이깁니다. 카스파로프가 딥블루의 진형을 무너뜨리기 위해서 내건 미끼에 딥블루가 쉽게 걸려들었거든요. 그런데 2국에서는 딥블루의 행마가 달라집니다. 특히 딥블루의 승착으로 지목된 수는, 당시 해설가들이 “극도로 정제된 한 수”라고 할 정도로 오묘한 의미를 내포한 수였거든요. 당장은 별로 좋아 보이지 않는데 뒤로 갈수록 진가가 드러나는. 카스파로프는 하룻밤 사이에 딥블루가 이렇게 달라졌다는 것을 믿기 어려웠습니다. 그래서 기자회견 때 IBM이 부정행위를 했다고 비난했지요. 전체 시리즈가 딥블루의 승리로 끝난 뒤 카스파로프는 재대결을 요구했지만 IBM은 이를 묵살하고 딥블루를 해체해버립니다. 이미 광고 효과를 다 거뒀으니 재대결을 받아들이지 않을 수 있지만 뒷맛이 아주 개운치는 않죠. 이번 대결에서는 이런 일이 없기를 바랍니다.
11. 유엔보고서에 따르면 2045년에 인공지능이 인간을 능가한다는데?
인공 지능이 발전을 거듭하면 영화 <터미네이터>의 ‘스카이넷’처럼 컴퓨터가 인간을 지배하는 디스토피아가 펼쳐질 것으로 걱정하는 목소리도 있지요. 모든 기술이 그렇듯이, 인공지능은 사회에 유익한 방식으로 이용될 수도 있고 사회에 유해한 방식으로 이용될 수도 있습니다. 그런데 원자력 발전이나 유전자변형식품 같은 동시대의 기술과 비교해서 인공 지능이 더 위험하다고 생각되지는 않습니다.
컴퓨터가 언젠가 세상을 지배하리라는 암울한 전망에 대해 그럴듯한 반론을 하나 소개하면, 컴퓨터는 그런 일을 하도록 프로그램 되어 있지 않다는 거에요. 현재, 세상을 접수하도록 설계되어 있는 것들도 많거든요. 예를 들면, 박테리아는 오랜 진화의 역사를 거치면서, 번식 가능한 모든 공간을 접수하라고 프로그램 되어 있습니다. 뿐만 아니라 그 과정에서 인간을 죽일 수도 있고, 실제로 많은 사람들이 죽고 있지요. 또, 우리는 박테리아보다는 컴퓨터를 훨씬 더 잘 이해하고 통제할 수 있다는 겁니다.
물론 경계를 늦추지 말아야 합니다. 누군가 의도적으로 컴퓨터에 자의식을 부여하려고 시도할 지도 모르지요. 하지만 인간이 가지는 자의식의 구조와 작동 방법도 이해하지 못하는 상황에서 이것이 가능할 지는 회의적입니다. 그보다는 약한 인공 지능이 충분히 연결됐을 때 우리가 모르는 사이 강한 인공 지능으로 발전할 가능성에 대비하자는 주장도 있습니다.
컴퓨터가 세계를 지배할 가능성에 관한 논의보다 훨씬 시급하게 고려되어야 할 사회적 문제들이 있습니다. 우선 새로운 기술은 과도기 동안에는 대개 실업을 발생시킵니다. 과도기가 지나면 새로운 기술이 광범위하게 적용됨에 따라 새로운 일자리들이 생기기를 기대합니다만, 과도기 동안에는 극심한 혼란과 고통이 따를 겁니다. 또한 인간의 역사를 살펴보면, 새로운 기술은 흔히 부와 권력을 가진 사람과 그렇지 않은 사람들간의 격차를 크게 더 벌리는 경향이 있습니다. 이러한 문제를 슬기롭게 극복하고, 모든 사람들이 지금보다 더 지능적이 되는 데 인공 지능 기술이 보탬이 되는 것이 최상의 시나리오입니다.
12. 알파고 vs 이세돌 9단 대결을 어떻게 예상하는지?
이번 대국 조건이 이세돌 9단한테 유리한 조건은 아니라고 생각합니다. 알파고와 판후위 2단의 공식 대국은 각자 생각시간 한 시간에 30초 초읽기 3회로 뒀는데 아시다시피 알파고가 5:0으로 이겼습니다. 그런데 같은 기간 벌어진 비공식 대국은 생각 시간 없이 30초 초읽기 3회만으로 뒀는데 알파고가 3:2로 겨우 이겨요. 시간이 짧을수록 수읽기보다는 감각에 의존해야 하는데 아직 알파고는 프로에 비해서는 감각이 많이 떨어지는 것 같습니다.
이번 대국은 각자 생각시간 두 시간에 1분 초읽기 3회로 벌어지죠. 판후위 2단과의 (공식) 대국보다 시간이 두 배로 늘어났어요. 이러한 변화가 어느 쪽에서 요구한 것인지 궁금합니다. 이세돌 9단 입장에서는 역사적인 대국인 만큼 보다 완벽한 기보를 남기고 싶은 마음이 있었을 수도 있습니다. 처음부터 30초 초읽기로 두는 바둑에 비해 아무래도 실수가 줄겠지요. 경기력으로 따져서 두 집쯤 올라갈까요? 하지만 알파고는 한 점 이상 경기력이 올라갈 것으로 추측합니다. 5번기를 매판 다른 조건으로 진행하면서 알파고의 장/단점을 좀 더 이해할 수 있는 기회가 있었으면 좋았을 텐데 약간 아쉽습니다.
이번에는 이세돌 9단의 승리를 예상하는 사람들도, 컴퓨터가 사람을 이기는 것이 결국 시간 문제라는 데 대부분 동의합니다. 누군가 “인공 지능의 반대편에 베팅하는 것은 어리석다”고 했지만, 저는 이세돌 9단의 5:0 승리를 기대합니다. 바둑에는, 인공 신경망의 별 의미도 없어 보이는 가중치를 계산하는 것만으로는 극복할 수 없는, 더 높은 차원의 무엇인가가 있다고 믿고 싶기 때문입니다.
이세돌 9단이 4:0 정도로 리드하게 되면 마지막 한 판 정도는 이세돌 9단이 (적어도 프로가 된 이후) 한 번도 둬본 적이 없는 포석을 펼쳐보길 기대합니다. 첫 수를 천원에 두고, 이후에도 돌이 계속 5선, 6선으로 가는 식으로요. 유연한 상상력으로만이 헤쳐나갈 수 있는 미지의 세계로 알파고를 데려가 보는 거지요.
13. 관전포인트
‘인간 두뇌의 마지막 보루’. 카스파로프와 딥 블루의 1997년 대결을 다룬 뉴스위크의 표지 기사 제목입니다. 시청자들께서는 이 정도로 너무 절박하게는 보시지 않았으면 합니다. 딥블루 개발팀이 했던 얘기를 옮겨보겠습니다.
“체스판 위에서 인간과 컴퓨터가 격돌하면 최고의 체스 실력을 가진 인간의 독창성과 수학자, 전산학자, 엔지니어의 축적된 연구결과가 대결을 벌이게 된다. 인간과 기계의 대결은 기계가 사고능력이 있음을 보여주려는 것이 아니라 인간이 공동으로 만든 연구결과가 가장 재능 있는 인간을 뛰어넘을 수 있는 지를 보여주려는 것이다."
저는 이 정도가 적절한 관전법이 될 거라 생각합니다.
댓글 영역
획득법
① NFT 발행
작성한 게시물을 NFT로 발행하면 일주일 동안 사용할 수 있습니다. (최초 1회)
② NFT 구매
다른 이용자의 NFT를 구매하면 한 달 동안 사용할 수 있습니다. (구매 시마다 갱신)
사용법
디시콘에서지갑연결시 바로 사용 가능합니다.