brunch

You can make anything
by writing

C.S.Lewis

by Ash Han 한승환 Dec 24. 2016

알파고와 이세돌 - 인공지능은 인류를 멸망시킬까?

원글 작성: 2015-3-16

알파고와 이세돌

- 인공지능은 인류를 멸망시킬까?




지난 3월 9일부터 1월 16일까지 총 5회에 걸쳐, 바둑역사상 가장 많은 관심을 받은 경기인, 알파고와 이세돌 9단의 바둑 경기가 있었다.


알파고는 구글(법인명: 알파벳)의 자회사이자 인공지능을 개발하는 회사인 딥마인드에서 개발한 바둑 봇이다.  


이세돌은 한국 프로바둑기사 중 최연소 입단 3위(당시 13세)를 기록하였으며, 조훈현, 이창호에 이은 세계 바둑 최강자로 오랜 기간 군림해온 살아있는 전설과도 같은 인물이다.


딥마인드사에서 개발한 알파고와 이세돌은 5번의 접전을 펼쳤으며, 4:1로 이세돌이 패하게 된다. 이세돌 구단이 스스로 자신한 "4-1이나 5-0 정도로 이기는 것이 맞다고 본다"와는 정반대의 경기 결과가 나온 것이다.


이세돌의 이러한 압도적인 패배는 전 세계에 엄청난 충격을 주었고, 주요 언론들에서 대문 기사로 다루며 이것의 이슈성을 다시 한번 상기시켜 주었다. 당시 이 경기는 마치 바둑을 매개로 인간과 인공지능이 대결을 하는 상징성을 띄기도 하였는데 이세돌 구단의 인터뷰에서 그 점을 잘 알 수 있다.



-어떻게 승부를 받아들이게 됐나. 

"당연히 이길 자신이 있어서 받아들였다. 지금도 그 생각이 변함없는 것이 구글이 나를 어떻게 생각하는지는 알 수 없지만, 나는 구글에서 이 알파고라는 프로그램이 완성 단계로 들어서기 위한 시험 단계라고 보기 때문에 여기서 인간이 진다, 내가 진다... 인간이 진다는 것은, 그것은 인간이 너무 무력한 것이 아닌가 하는 생각이 든다. 물론 내가 한 판, 많게는 두 판까지 질지언정 3-2라도 내가 이길 것 같고 4-1이냐 5-0이냐, 이 정도가 맞지 않느냐 이렇게 보고 있다."

-만약 진다면 어떤 파장이 일어날 것 같은가. 

"빠르면 2년, 3년. 길게는 5년에서 많게는 10년까지, 그때 가령 인간이 진다면 이미 이런 프로그램이 있었다는 것을 알기 때문에 충격이 덜할 거다. 질 수도 있는 시대가 왔구나... 내가 이긴다 해도 마음의 준비가 될 것이다. 5년 후에는 인간이 지겠는데... 하지만 지금 진다는 것은 전혀 준비가 안 되어 있지 않은가. 지금은 엄청난 후폭풍이 몰려오지 않을까.

<한게임 바둑뉴스 - 한창규, 2016-01-28>





이것이 시사하는 바는 무엇일까?


-이제 인간의 모든 것을 인공지능이 대체하게 된다는 것인가?


-알파고는 인공지능인가? 인류는 멸망할 것인가?


-앞으로는 회사의 경영도 인공지능에 맡기는 시대가 올까?


-만일 언젠가, 인공지능이 인류가 해악이라고 판단하고 인류를 멸종시킬 수도 있을까?


-아니면, 어쩌면 아무런 의미도 없는 것일까?


위의 질문들에 답하기 위해, 아래에서 몇 가지의 내용을 살펴보고자 한다.







-목차-


바둑의 경우의 수


해 찾기 알고리즘


알파고와 딥러닝


창의력과 직관


인공지능과 인간의 직업


인간의 발언권 - 인공지능의 오류 vs 인간의 오류








바둑의 경우의 수


동양에서 유명한 보드게임이 바둑이라면 서양은 명실상부 체스가 그 자리를 차지하고 있다. 여러 가지가 서로 다르겠지만, 컴퓨터 입장에서 체스와 바둑의 가장 근본적인 차이점은 한 마디로 '경우의 수'가 얼마나 많은가이다. 


체스는 가로세로 각각 8칸씩으로 총 64칸이 있으며, 그 안에서 6종류의 말들을 정해진 경로에 따라 움직이는 게임이다. 총 10의 120승(10^120)개 정도의 경우의 수가 존재한다고 알려져 있다.


반면 바둑은 각 19칸씩으로 총 361칸이 존재하고 있다. 한 명이, 361칸 중 한 곳에 바둑돌을 놓으면 다음 주자는 남은 360에서 착지점을 고르면 되므로, 경우의 수는 하나씩 줄어 다음과 같이 계산할 수 있다.


361! = 361팩토리얼 = 361 * 360 *59 * 358 * ..... * 3 * 2 * 1 


그러나 실제로 바둑 규칙을 보면, '패'라는 이미 착점 한 자리에 다시 착점 할 수 있는 규칙이 존재한다. <한국기원 바둑규칙>



  


따라서 가능한 모든 경우의 수는, 400! 또는 500!까지도 어쩌면 거의 무한에 가까운 수까지도 가능해진다. 일반적으로 바둑의 경우의 수를 '10^360(10의 360승)' 가량으로 칭하기도 한다. (사실 10^360도 이미 이 세상에서 가장 많은 수라는 '우주 전체의 원자숫자(10^80)'보다 훨씬 많은 수이기 때문에 그냥 무한이라고 이해해도 무방하다 - 어차피 인간계에서는 별 차이 없는 숫자이다)






해 찾기 알고리즘


일반적으로 체스나 바둑은 컴퓨터 입장에서 해 찾기 계산이나 마찬가지라고 볼 수 있다. 


즉, 우승을 목표로 각 순서에서 가장 우승확률을 높여주는 최적해 즉 착점(바둑알을 놓는 장소)을 계산하는 것인데, 각 경우의 수를 실제로 모두 대입해본 뒤에야 어떤 움직임이 가장 높은 우승 확률을 가지고 있는지 알 수 있을 것이다. (승리를 1, 패배를 0으로 정의하고, 목푯 값을 1로 설정한다. 그렇게 하여 1이라는 목푯값에 가장 가까워질 수 있게 해주는 경우의 수(바둑돌 착점)들을 찾아내는 것이다.)


실제로 이러한 보드게임의 알고리즘에서는 무작위대입(Brute Force)를 통해 각 경우의 승률을 모두 계산한다. 그렇게 각 상황에 맞는 최적해(승률이 가장 높은 경우의 수)를 도출하는 것이다.


(아래는 M/S EXCEL에서 흔히 사용하는 해 찾기의 예시이다. 주어진 자원 조건 내에서 어떻게 하면, 최소의 비용으로 최대의 생산을 할 수 있는지 계산해준다.)




그러나 바둑의 경우의 수는 사실상 무한대이기 때문에, 이를 무식하게 모두 대입해서 계산해보는 것은 아무리 컴퓨팅 파워가 좋아도 불가능하다.


그러나 경우의 수를 줄이는 다음과 같은 요소들이 있다.


-바둑은 대부분의 경우, 바둑판을 모두 메워가며 두는 것이 아니라 상당한 빈점들을 남겨둔 시점에서 이미 승패가 갈리게 된다. (알파고VS이세돌구단 대결의 경우 대부분 361개의 칸 중 200여개의 칸만 채운채로 경기가 종료되었음을 알 수 있다.)


-현실적으로 바둑을 둘 때, 주요 위치들에 대한 경우의 수를 구하면 되지, 모든 경우의 수를 구할 필요는 없다. 


-바둑은 아무 데나 두는 것이 아니라, 기존에 두었던 착점 또는 상대가 두었던 착점에 개연성을 유지하며 두어가는 것이기 때문에 경우의 수는 더욱 줄어든다. 이를 바둑에서는 필연적인 수순이라든가 기세의 흐름 등으로 칭한다. 프로기사 출신의 해설자들이 예상하는 적절한 대응 수는 결국 5~10여 가지에 불과하다.


-바둑판을 채워가면 갈수록, 즉 후반으로 갈수록, 둘 수 있는 빈칸이 줄어들기 때문에 계산해야 하는 경우의 수가 줄어들게 된다. (따라서 초 중반이 아니라면 바둑의 최적해 값 계산은 점점 더 정확해진다. 즉, 후반으로 갈수록 인공지능 바둑기사를 이길 확률은 기하급수적으로 낮아진다.)


위와 같은 내용들이 기존 해 찾기 알고리즘에 더해지면, 알파고가 승리를 위해 계산해야 하는 경우의 수는 획기적으로 줄어들게 된다.







알파고와 딥러닝


알파고의 이러한 해 찾기 알고리즘은 어떻게 최적화되었을까?


누군가가 각 상황에서의 구동방식을 알고리즘화 하여 일일이 입력했던 것일까?


알파고는 딥러닝 방식을 통해 스스로 최적화된 알고리즘을 만들어낸다.


*알파고에 적용된 기술방식은 다양하다 - 심화학습, 강화학습, 지도(supervising)학습, 몬테카를로 트리 탐색(트리순회), 정책망, 가치망, 클러스터링 등이 있으나 딥러닝이라는 큰 틀 안에서 모두 설명이 가능하므로 자세한 내용은 생략한다.


'알파고'가 사용한 딥러닝의 특징은 기존에 체스챔피언을 꺽은 '딥블루'와 비교해보면 명확해진다.


"딥블루는 체스와 관련된 정보를 일일이 입력해 만든 ‘체스에 특화된 인공지능’이지만, 알파고는 ‘범용 알고리즘’을 적용해 얼마든지 용도를 확대할 수 있다는 점에서 다르다"라고 개발 책임자인 데이비드 실버 박사는 밝힌다. <동아일보 2016.03.09>


딥블루가 일일이 인간의 손을 거친 작품이라면, 알파고는 상당 부분 스스로 학습한 것이라는 점이다.


알파고는 맨 처음, 스스로에게 입력된 온라인 바둑 서버에서 수집한 바둑 고수들(아마 5단급)의 기보 16만개(3000만개의 수)를 모두 학습했고, 이를 통해 사실상 정형화된 대부분의 패턴들과 각 상황에서 가장 승률이 좋았던 수들을 파악해냈다. 이를 통해 모호하거나 최적해가 계산되지 않은(수 읽기를 마치지 못한) 상황에서는 경험적으로 축적된 패턴을 통해 승률이 높은 수를 두어나갔다. <ConvNet를 통한 패턴 인식 & 몬테카를로 트리 탐색> 


이후에는 스스로 내부에 알파고1(정책망1), 알파고2(정책망2) 등을 만들어서 스스로 버추얼 시뮬레이션(셀프대국)을 통해 기존 기보에서 처리할 수 없었던 부분들을 채워나갔다. 이는 프로기사들이 머릿속으로 가상 대국을 해보는 것과 유사하다. <강화학습>


이러한 방식으로 딥마인드는 1,000년에 해당하는 만큼의 바둑학습시간을 달성했고, 가능한 모든 상황에서 최적의 수를 상당 부분에서 인간보다 더 많이 확보할 수 있게 되었다.


또한 그전에 전혀 없었던 패턴일지라고, 빠르고 효율적으로 대응하는 것이 가능해졌는데, 기본적으로 엄청난 성능의 CPU를 통해 경우의 수 계산이 빨라졌고, 경험을 통해 설계한 알고리즘을 통해 연관성이 없는 경우의 수는 계산에서 제외함으로써 일거리를 줄였다. 심지어 정해진 시간이 부족할 경우, 패턴을 통해 계산된 대안들 중 가장 나은 것은 차 선택함으로써 엉뚱한 수를 방지하는 장치까지 마련할 수 있었다.


위와 같은 기법들을 통해, 인간은 알파고에게 핵심적인 요소(feature)들만을 정해주고, 나머지 작동 알고리즘은 알파고가 스스로 학습해가며 최적해를 만드는 방향으로 직접 작성해왔던 것이다.


지금도 알파고는 스스로 대국을 치르며 승률이 높은 수들을 패턴화 시키고 경우의 수를 줄일 수 있을 만한 요소들을 알고리즘 화하며 경험치를 쌓아가고 있을 것이다.






창의력과 직관


대국 중에, 이따금 알파고가 엉뚱해 보이는 수를 두는 경우가 종종 있었고 프로 해설가들은 이를 단순히 기계의 오류라고 치부한 바 있다. 그러나 이내 상당수의 수들은 향후 승패에 결정적인 역할을 하며, 오류가 아니라 사실은 철저히 계산된 '설계'였음이 드러나기도 하였다.


이를 보고 일부 기사들에서는 알파고가 '사고력 또는 창의력이 있는 것'이라고 주장을 한다.


그러나 엄밀히 말하면 이것은 사고력도, 창의력도 아니다. 


바둑에도 유행이 있고 대세흐름이란 것이 있다. 바둑과 함께한 인간의 역사가 4000여 년이 되는데, 각 상황에 최적이라고 생각되는 '정수'는 꾸준히 변화해왔다. 즉 인간은 바둑역사에 걸쳐 각 상황에 맞는 '최적해'를 꾸준히 발전시켜온 셈이다.


사실 알파고는 이미 인간이 할 수 있는 대국보다 훨씬 많은 대국을 해왔기 때문에, 일부 수들은 인간 입장에서는 미래 시점에서의 '최적해'인 셈이다. 오히려 인간이 알파고에게서 여러 개의 최적해를 배워가야 하는 상황도 발생할 수 있다. 


진행자: "김수장 9단께서는 바둑해설도 명해설로 아주 유명하신 분이신데 일각에서는 알파고가 둔 수가 향후 기존 정석을 바꿀 수 있는 새로운 정석을 만드는 수로 정립될 수도 있다, 이렇게 보던데 어떻습니까? 알파고의 수가."

김수장 구단: "저도 이번 아주 충격은 받았지만 이번 기회로 프로기사들이 연구하는데 상당히 도움이 될 것 같습니다. 특히 알파고와 같은 그런 생각은 전혀 못 했었거든요. 안목을 넓히는데 큰 도움은 될 거라고 생각하고요. 이번 기회에 어떻게 보면 승부는 졌지만 아주 고마운 기회였다, 그렇게 생각이 듭니다." 

<김수장 구단 - 신동호의 시선집중>


이러한 알파고의 최적해를 온전히 이해하지 못한 인간이 스스로 이해하지 못한 수를 창의력이라고 칭송하는 것일 뿐이다. 


직관도 마찬가지이다. 직관(直觀)이란 '곧을 직'에 '보일 관'자를 써서 어떠한 일의 흐름을 특별한 추리 없이 바로 꿰뚫어 보는 것을 의미한다.


극도로 훈련된 인간일수록 이러한 직관이 좋은데, 특히 어떠한 다변적이고 급작스러운 상황이 닥쳤을 때, 어떠한 계산도 없이 즉시 행동하는 능력이라고 볼 수 있다.


기차가 달려오는 선로에 빠진 아이를 구해내는 시민영웅들의 이야기를 들어보았을 것이다. 찰나의 순간에 아이를 구하기 위해 튀어나갈때, 1)기차의 속도 2)아이와 기차와의 거리 3)나의 근력 4)나와 아이와의 거리 5)잠재 리스크 6)아이를 구할 수 있을 확률 등을 계산하고 나가는 것이 아니다. 그저 직감과 본능을 통해 순간적인 결정을 내린 것이다. (사실 인생사에는 계산을 통해 결정할 수 없는 복잡한 인들이 너무나 많다.) 이러한 시민영웅들은 당시 아무런 생각이 없었으며, 구하는 대상이 아이인지조차 인지 못한 채로 그저 몸이 이끄는 대로 움직였을 뿐이라고 대답하곤 한다.


인공지능은 그렇지 않다. 어떤 한 수밖에 없는 뻔한 상황에도 인공지능은 가능한 모든 경우의 수를 놓고 목푯값에 가장 가까운 결과를 내줄 가장 높은 확률의 값을 계산해내야만 한다. 이러한 계산과정 없이는 단 하나의 수도 판 위에 올려놓지 못한다.


알파고는 경험적 데이터 축적으로 인해 높은 확률의 선택을 학습한 아주 빠른 계산기이지, 직관이나 창의력이 있다고는 볼 수 없다.


현재로써는 그 알고리즘을 통한 계산에 의존한 어떠한 인공지능도 인간과 같은 직관을 가질 수는 없다고 보는 것이 맞을 것이다.


*물론 수사 구의 차원에서 인공지능의 기능을 창의력/직관이라는 용어를 일종의 표현을 위해 사용하거나 빗댈 수는 있을 것이다.






인공지능과 인류


그렇다면, 나중에는 인공지능이 회사도 경영하고, 사람도 다스리고 대통령도 할 수 있지 않을까? 인공지능이 인간을 지배할 수 있는 것은 아닐까?


물론 필자도 매우 먼 미래의 이야기는 알기 어렵다.


그러나 딥러닝과 알고리즘을 통한 기본적인 추론을 통해 가까운 미래를 조망해보는 것을 가능하다.


먼저, 계속 얘기하던 바둑을 예로 들어보자.


바둑은 명확히 정의된 플레이 규칙이 있고, 승패의 기준도 매우 명확하다.


즉 규칙과 승패에 대한 변수들이 명확히 정의되어 있다는 것이다.


이를 네이쳐지에 실린 '딥마인드 논문'에서도 확인해볼 수 있는데, 아래의 그림은 바둑이라는 게임의 요소(Feature)들에 대한 명확한 정의가 미리 내려져 있었음을 나타낸다.



인공지능이 승리를 목표로 행동을 하게 하려면, 어떤 것이 승리이고 어떤 것이 패배인지, 바둑알은 어떻게 움직이는 것인지, 초읽기 시간은 어떻게 되는지 등의 기본적인 '변수정의'가 선행되어야 한다. 이것은 인공지능이 아직 스스로 할 수 없는 부분으로, 인간이 직접 정의를 해주어야만 한다. (사실 너무나 당연한 부분이다)





어떠한 회사에 대한 운영을 인공지능에게 맡기고자 한다고 한다.


먼저 목표를 설정해주어야 한다. 목표설정은 비교적 쉽다. 


수익배당 극대화/회사존속기간최대화/회사규모 최대화 등 중에 선택하거나 셋 모두를 가산 치를 통해 차등하여 설정할 수도 있을 것이다.


이제 회사의 수익/존속기간/성장에 요소가 될 수 있을 만한 것들을 정의해주자.


자연재해가 회사의 성장에 방해가 될지 이익이 될지까지는 설정할 필요가 없다. 우선 자연재해라는 요소가 입력만 된다면 인공지능이 딥러닝을 통해 자연재해의 영향을 알아서 추론해낼 테니까.


자연재해뿐만 아니라 소비심리 위축, 국가 간 정세변화, 국제기구, 국가별 법안 상정, 사람들의 소비수준, 삶의 만족도 등도 회사의 존망에 분명한 영향을 미치는 요소일 것이다. 


사실은 각 요소가 영향을 어떻게 얼마나 미칠지는 계산할 필요 없다 - 데이터 값만 입력하면 어차피 인공지능이 알아서 다 계산해준다.


그러나, 그러한 데이터를 어떻게 컴퓨터 안으로 넣을 것인가?


국가 간 정세변화를 어떻게 숫자로 표현할 것이고, 누가 언제 얼마큼 할 것인가?


조금만 추리해보면, 애초에 요소와 잠재변수(latent variable)의 정의도 어렵고 전산화를 통한 입력도 불가능에 가깝다는 것을 알 수 있다.


따라서 현재까지 인공지능은 수치가 명확히 정의될 수 있는 제조업의 생산 불량관리나 직원 생산성과 근태, 또는 마케팅 회사의 바이럴 효과, 타깃광고 또는 검색어 개인화 등을 산출하는 수준에서만 적용이 가능하며, 경영결정에 있어서도 아직은 부차적인 자료를 만드는 수준이지 경영의사결정을 '직접'내리는 수준에 이르기까지는 길이 아직 멀다.


따라서 인공지능이 바둑 대가를 이겼다고, 인간의 종말은 생각하지 않아도 된다. (물론 그렇다고 해서 앞으로 대부분의 직업이 기계에 의해 대체되지 않을 것이라는 논지는 아니다 - 대부분의 직업은 인간이 제어하고 지배하는 인공지능 그리고 기계에 의해 대체될 것이다)








인간의 발언권 - 인공지능의 오류 vs 인간의 오류


다만 우리가 앞으로 조심해야 할 것은, 인공지능 자체에 의한 인간의 피지배가 아니라, 인간 스스로가 인공지능을 통해 인간을 지배하는 것이다.


알파고와 이세돌 구단과의 대결에서, 1국에서는 알파고가 인간이 예상 못한 곳에 두었을 때, 해설자들은 인공지능의 실수를 확신했다.


하지만, 2국 3국이 점점 지나갈수록, 해설자들은 이것이 알파고의 실수인지 아니면 깊은 노림수인지 본인들도 모르겠다고 하였고, 아마도 오히려 나중에 최적의 수였음이 드러날 수도 있다고 하며 확신 없는 모습을 보였다.


즉, 이전에는 인간과 인공지능이 대립할 경우, 인공지능의 오류를 의심했으나, 향후에는 인간의 오류를 의심하게 될 수 있는 것이다.


공장 프레스기기가 인간 중 가장 강한 이보다 힘센 것이 당연하고,


계산기가 인류 최고의 수학자보다 계산이 빠른 것이 당연하다.


앞으로는 인공지능의 결정이 인간보다 더 정확한 것이 당연한 것으로 받아들여지는 세상에 살게 될 것이다.


사실상 너무나 복잡한 구조와 논리 때문에, 인공지능이 옳은 방식으로 작동하는지 실제로 그 메커니즘을 코드단위로 분석하고 증명할 수 있는 인간을 손에 꼽게 되는 상황이 올 것인데, 그럼에도 불구하고 그저 인공지능이 맞다고 따라가는 주체성을 잃은 인류세대가 시작될 수도 있다.


실제로 인공지능이 인간이 코드에 입력하는 것 이상의 권한을 휘두르는 것은 불가능하지만, 인간이 스스로 인공지능의 휘하에 들어가 주체성을 잃어버리는 것은 충분히 가능한 이야기이다.


인공지능을 불신하고 거부하는 것도 어리석은 일이겠지만, 인공지능을 맹신하는 것은 더욱 위험할 수 있을 것이다. 끊임없이 돌아보고 검증하며 재확인하는 주체적인 인간이 되어야 할 것이다.








<그 외 읽으면 도움될 기사 등>

http://thenewstack.io/google-ai-beats-human-champion-complex-game-ever-invented/

http://m.ndsl.kr/scent/scent_detail.do?mType=1&sType=1&seq=5953&custom2=2

http://www.hankookilbo.com/v/b35a5daf44d043969facbffe704af34e

http://slownews.kr/41461

http://www.itnews.or.kr/?p=16848

http://migom.tistory.com/23

https://ko.wikipedia.org/wiki/%EC%95%8C%ED%8C%8C%EA%B3%A0

https://namu.wiki/w/%EA%B8%B0%EA%B3%84%ED%95%99%EC%8A%B5

http://slownews.kr/52270

http://www.hani.co.kr/arti/science/science_general/733929.html



브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari