최근 구글에서 "알파고"라는 컴퓨터 프로그램과 이세돌 9단의 대결을 발표해서 꽤 화제가 되고 있습니다.
예전에 아이비엠의 "딥 블루" 가 체스 챔피언을 이겨서 화제가 된 적도 있었고, 또 아이비엠의 "왓슨" 은 유명 퀴즈쇼 "제퍼디" 에서 우승을 차지한 적도 있었는데, 아직까지 바둑은 컴퓨터가 아마 기사 수준을 넘어선 적이 없어서 더 화제가 되는 것 같아요.
그리고 사족이지만 IT회사의 패러다임이 이전의 하드웨어 중심 (아이비엠 같은..) 에서 확실히 소프트웨어 / 알고리즘쪽 (구글 등) 으로 옮겨온 것이 아닌가 하는 생각도 듭니다.
(IBM이 주가 방어에 매년 천문학적인 돈을 쓰는 걸 생각해 보면.. 아래 주가 그래프는 시사하는 점이 많죠)
저도 아이티 관련 일을 하고 있지만, 머신 러닝 "Machine learning" 이라는 용어의 개념이 바로 와닫지는 않는 것 같습니다.
컴퓨터 프로그램의 가장 기본적인 개념은 "함수" Function 이죠. 인풋이 있으면 미리 프로그래머가 정의해 놓은 알고리즘 으로 계산을 수행하고, 그 결과를 아웃풋으로 내 보내는 ..
하지만 머신 러닝은 프로그래머가 사전에 정의하지 않고서도, 컴퓨터가 스스로 무언가를 "배울 수 있는" 방법을 연구하는 분야입니다.
위키피디아의 설명에 의하면, 데이터를 통해서 배우고 또 예측할 수 있는 알고리즘을 연구하며, 그러한 알고리즘은 입력된 데이터들로부터 수학적 모델을 만들어 내서, 그 모델을 통해 데이터를 예측하게 된다는 이야기입니다.
결국 머신 러닝도 "데이터"에서 시작되는 개념이고 통계학, 데이터 마이닝, 최적화 이론 등과 밀접한 연관성을 가지게 된다고 할 수 있습니다.
구글 알파고 홈페이지를 들어 가 보면 대략적인 내용을 설명하고 있고 링크를 통해서 네이쳐지에 발표된 논문도 볼 수 있습니다.
간략한 설명을 보면, 지금까지의 컴퓨터 바둑 프로그램과는 다르게 알파고는 인공신경망 이론을 이용해 2가지 네트워크 (바둑판 위의 각각 위치의 가치를 나타내는 value network와 다음 번 수를 계산하기 위한 policy network) 를 구성하여 사용한다고 합니다.
그리고 새로운 검색 알고리즘을 도입하여 몬테카를로 시뮬레이션과 value, policy network를 묶어서 사용한다고 하니.. 정말 대단하다는 생각밖에 들지 않습니다.
오늘 아침부터 구글의 페이퍼를 보고 있는데 아직까지는 저도 기반 지식이 없어 잘 이해가 되지 않더군요. 앞으로 시간이 날 때 마다 관련 내용을 공부해서 조금씩이라도 포스팅 하도록 하겠습니다.
(업데이트 : 2016/3/9)
오늘 이세돌 9단과 알파고의 첫 번째 대국을 봤는데 저도 예상치 못한 결과가 나왔습니다.
당연히 이세돌 9단의 승리일 것으로 생각했는데, 결과는 알파고의 불계승 이었습니다.
제가 바둑을 몰라서 어떻게 해석해야 할지 모르겠지만, 이미 컴퓨터의 알고리즘과 시뮬레이션이 인간이 오랜 시간 쌓아 온 기보와 정석을 넘어서는 수준에 도달한 것이 아닌가 합니다.
개인적으로 이세돌 9단을 응원하였기에 기분이 썩 좋지는 않지만, 인공지능 개발의 한 획을 그은 하루가 아닌가 합니다.
(업데이트 : 2016/3/16)
어제 다섯 번째 대국을 마지막으로 이번 이벤트는 종료 되었습니다.
이세돌 9단이 스스로 불리한 흑돌을 선택하고서도 나름 선전했지만, 아쉽게도 알파고의 승리로 마지막 대국을 마무리 했네요.
처음 알파고가 이겼을 때는 정말 인공지능의 시대가 오는 게 아닌가 싶을 정도로 충격적이었지만, 제4국에서 이세돌 9단이 승리하면서 아직은 인공지능의 수준이 우리가 걱정할 정도까지는 아니라는 생각이 들더군요.
저를 포함한 대중들은 "바둑은 컴퓨터가 사람을 이길 수 없다"라는 고정관념에 사로잡혀 있다가 그게 깨져버리니 많은 충격을 받았던 것이 아닌가 하고요,
조금 지나서 생각해 보면 인공지능의 발달은 계속되겠지만 우리가 걱정하는 미래 (일자리를 컴퓨터와 로봇에게 빼앗기는) 는 최소한 저희 세대가 살아있는 동안에는 좀 힘들지 않을까 합니다.