DeepMind’s game-playing AI has beaten a 50-year-old record in computer science

딥마인드 AI ‘알파제로’, 50년 넘게 깨지지 않던 컴퓨터과학 기록 새로 썼다

딥마인드가 게임 AI ‘알파제로’를 활용해 컴퓨터과학의 핵심 문제인 ‘행렬 곱셈’을 더 빨리 푸는 방법을 알아냈다. 알파제로는 50년 넘게 깨지지 않았던 행렬 곱셈법보다 더 빠른 방법을 찾아내는 등 다양한 행렬 곱셈법을 발견했다.

알파벳 자회사인 딥마인드(DeepMind)가 보드게임 인공지능(AI) 알파제로(AlphaZero)를 활용해 컴퓨터과학의 기본적인 수학 문제를 더 빠르게 푸는 방법을 찾아냈다. 알파제로는 이미 50년 넘게 이어져 온 기록까지 깨뜨리며 놀라운 성과를 보이고 있다.

이번에 알파제로가 다루고 있는 문제는 화면에 이미지를 표시하는 것부터 복잡한 물리학을 시뮬레이션하는 것까지 다양한 작업에서 핵심적인 역할을 하는 ‘행렬 곱셈(matrix multiplication)’이다. 행렬 곱셈은 머신러닝(machine learning)에도 필수적이다. 따라서 행렬 곱셈의 연산 속도를 높이면 수많은 일상적인 컴퓨터 작업에 큰 영향을 미칠 것이며 그에 따라 비용 절감과 에너지 절약도 가능해질 것이다.

일본 나고야대학교의 수학 교수 프랑수아 르 갈(François Le Gall)은 알파제로의 성과에 대해 “정말 놀라운 결과”라며 감탄했다. 이번 연구에 참여하지 않은 그는 “행렬의 곱셈은 공학의 모든 부분에서 사용된다”며 “무언가를 숫자로 풀어내고 싶으면 일반적으로 행렬을 사용한다”고 설명했다.

이렇듯 행렬 계산은 어디에서나 보편적으로 사용되지만 계산에 대한 이해는 여전히 높지 않다. 행렬은 열과 행을 갖춘 격자 모양으로 구성한 숫자이며 이를 통해 무엇이든 원하는 것을 나타낼 수 있다. 두 행렬의 곱셈은 일반적으로 한 행렬의 행과 다른 행렬의 열을 곱하는 것을 말한다. 행렬 곱셈 문제의 기본적인 풀이법은 고등학교에서 배운다. 딥마인드의 ‘과학을 위한 인공지능(AI for Science)’팀 팀장 푸시미트 콜리(Pushmeet Kohli)는 “행렬은 컴퓨팅의 기본 알파벳과 같다”고 말했다.

그러나 행렬 곱셈 문제를 더 빠르게 푸는 방법을 찾으려고 하면 상황이 복잡해진다. 르 갈은 “행렬 곱셈 문제를 해결하는 최고의 알고리즘은 아무도 모른다”며 “이것은 컴퓨터과학의 대표적인 미해결 문제 중 하나”라고 말했다.

이는 두 행렬을 곱하는 방법이 우주에 존재하는 원자의 수보다도 더 많기 때문이다. 딥마인드의 공학자 토머스 허버트(Thomas Hubert)는 “가능한 방법은 거의 무한에 가깝다”고 말했다.

딥마인드가 채택한 방법은 문제를 텐서게임(TensorGame)이라고 하는 일종의 3차원 보드게임으로 전환하는 것이었다. 보드는 해결해야 할 곱셈 문제를 나타내며 각 움직임은 문제를 해결하는 과정에서 다음 단계를 의미한다. 따라서 이 게임에서 수행되는 일련의 움직임은 알고리즘이 된다.

연구자들은 ‘알파텐서(AlphaTensor)’라고 부르는 새로운 버전의 알파제로가 이 게임을 할 수 있도록 학습시켰다. 알파텐서는 바둑이나 체스에서 최선의 움직임을 배우는 대신에 행렬을 곱할 때 사용할 수 있는 가장 좋은 단계를 학습했다. 그리고 가능한 한 적은 움직임으로 게임에서 이기면 보상을 받았다.

알파제로 연구를 이끈 연구원 중 한 명인 허버트는 “우리는 행렬 곱셈 문제를 우리가 가장 좋아하는 게임이라는 틀로 전환했다”고 말했다.

연구원들은 5일(현지시간) <네이처(Nature)>에 발표한 논문에서 알파제로를 이용한 행렬 곱셈 해결에 관해 자세히 설명했다. 논문에서 가장 중요한 결과는 알파텐서가 4X4 행렬 두 개를 곱할 때 1969년 독일 수학자 폴커 슈트라센(Volker Strassen)이 고안한 방법보다 더 빠른 방법을 발견했다는 것이다. 지난 50년이 넘는 시간 동안 누구도 슈트라센이 고안한 방법을 개선하지 못했다. 고등학교에서 배우는 기본적인 방법으로는 4X4 행렬 곱셈에 64단계가 필요하며 슈트라센의 방법으로는 49단계가 필요하다. 알파텐서는 47단계 만에 계산하는 법을 발견했다.

전반적으로 알파텐서는 70개가 넘는 다양한 크기의 행렬 곱셈에 대해 기존에 최고로 여겨졌던 알고리즘을 능가하는 방법을 찾아냈다. 알파텐서는 9X9 행렬 두 개를 곱할 때 필요한 단계를 511에서 498로 줄였으며 11X11 행렬 곱셈에 필요한 단계는 919에서 896으로 줄였다. 그 외에 다른 행렬에 대해서는 단계를 줄이지는 못했어도 기존에 최고로 여겨지고 있는 알고리즘을 재발견했다.

연구원들은 다양한 크기의 행렬 곱셈에 대해서 알파텐서가 정확한 알고리즘을 수없이 발견한 것에 매우 놀랐다. 딥마인드의 연구 과학자 후세인 파우지(Hussein Fawzi)는 “4X4 행렬 곱셈을 푸는 데 적어도 1만 4,000가지 방법이 있다는 것을 알게 되어 너무나 놀랐다”고 말했다.

이론적으로 가장 빠른 알고리즘을 찾고 있었던 딥마인드 연구팀은 실제로는 어떤 알고리즘이 빠른지 알고자 했다. 컴퓨터 칩은 특정 유형의 연산을 위해 설계되는 일이 많기 때문에 알고리즘마다 더 나은 결과를 낼 수 있는 하드웨어가 서로 다르다. 딥마인드 연구팀은 알파텐서를 사용해서 신경망 학습에 가장 흔히 사용되는 엔비디아(Nvidia) V100 GPU와 구글 TPU 프로세서에 적합한 알고리즘을 찾았다. 그들이 발견한 알고리즘은 일반적으로 해당 칩을 이용해서 사용되는 알고리즘보다 행렬 곱셈에서 10~20% 정도 더 빠른 속도를 보였다.

미국 매사추세츠 공과대학교(MIT) 컴퓨터과학인공지능연구소(Computer Science and Artificial Intelligence Laboratory)의 버지니아 윌리엄스(Virginia Williams)는 이번 결과를 보고 흥분했다. 윌리엄스는 사람들이 한동안 행렬 곱셈의 새로운 알고리즘을 찾기 위해 컴퓨터를 활용한 접근법을 이용해왔으며 가장 빠른 기존의 알고리즘 중 다수도 이런 방식으로 고안됐다고 언급했다. 그러나 그 누구도 슈트라센의 방법처럼 기존에 오랫동안 이어져 온 방법을 개선하지는 못했다.

윌리엄스는 “이번 방법은 다른 사람들이 했던 것과는 완전히 다르다”며 “이 새로운 방식이 실제로 이전의 방법들을 모두 포괄할 수 있는지 또는 이번 방식과 기존 방식을 결합해서 더 나은 방법을 찾아낼 수는 없는지 알아내는 것이 좋을 것 같다”고 말했다.

딥마인드는 이제 알파텐서를 활용하여 다른 유형의 알고리즘을 찾고자 한다. 콜리는 “이제 이것이 컴퓨터과학을 하는 새로운 방법”이라고 말했다.

미리보기 2회1회

MIT Technology Review 구독을 시작하시면 모든 기사를 제한 없이 이용할 수 있습니다.