brunch

You can make anything
by writing

C.S.Lewis

by 최재운 Jul 29. 2024

머신러닝을 처음 만든 사람은 누구일까?

아서 사무엘 (1901 - 1990)

<쉽고 재밌는 AI의 역사>라는 브런치북 연재를 시작합니다. 인공지능의 역사를 깊이 있으면서, 또 지루하지 않게 풀어보고자 합니다. 과거 역사적 사실을 단순 나열하기보다, 현재와 연관 지어 AI 역사를 되돌아보며, AI가 열어갈 미래를 엿보고자 합니다.


기존에 썼던 AI 역사 글을 연재 브런치북에 넣을 수 없어 아래 리스트로 먼저 정리합니다. (글 제목을 클릭하시면 링크로 이동합니다) 아래 리스트의 글을 먼저 읽으신 후, 본 글의 본문을 보시면 좋지만, 이글만 봐도 무방합니다 :)


자연철학의 시작과 앨런 튜링

기계는 생각할 수 있는가에 대한 튜링의 대답

1400만 목숨 구한 앨런 튜링의 비극적 최후

AI 역사를 철학에 빗대어 보는 이유

역사적인 1948년, 사이버네틱스가 탄생하다

인공지능, 이 불행한 이름을 지은자는 누구?

1964년 나온 AI 묵시록

인간은 생각하는 기계다




2016년 혜성같이 등장한 알파고로 인해 대중들은 인공지능에 관심을 가지게 된다. 알파고가 사용한 알고리즘인 '딥러닝'이란 용어를 많은 이들이 알게 되었으며, '머신러닝'이라는 용어까지 뉴스와 신문에 자주 등장하게 되었다. 인공지능, 머신러닝, 딥러닝이 혼용되어 사용되면서 많은 이들은 이 세 단어에 대한 개념을 헷갈려한다.


이들 사이의 관계 정립을 위해서는 먼저 인공지능에 대한 개념을 잡아야 한다. 아래 그림과 같이 인공지능은 모든 것을 포괄하는 개념이다. 말 그대로 인간의 지능을 모방하는 모든 기술과 시스템을 포괄하는 큰 틀이 인공지능이다. 머신러닝은 인공지능을 구현하기 위한 방법 중 '하나'이다. 기계가 인간처럼 학습을 한다는 의미이다. 머신러닝을 구현하기 위해 많은 알고리즘들이 제안되었다. 그중 가장 각광받는 알고리즘이 바로 딥러닝이다. 딥러닝은 사람의 신경망을 모방한 인공 신경망을 이용하여 학습을 진행한다. 인공의 지능을 만들기 위해 우리의 뇌를 모방한 것이다.


정리해 보자면, 인공지능은 인간의 지능을 모방하는 기술을 통칭하는 용어이다. 머신러닝은 인공지능의 한 분야로, 기계가 데이터로부터 스스로 학습하는 기술을 말한다. 딥러닝은 머신러닝의 한 방법으로, 인공신경망을 이용해 학습하는 기술을 가리킨다.

인공지능 - 머신러닝 - 딥러닝 관계 (출처 : 엔비디아)


그렇다면 이들의 등장은 언제, 어디서 된 것일까? 우리는 앞선 글에서 '인공지능'이라는 용어가 언제, 어떻게 등장했는지 살펴본 바 있다.



인공지능만큼이나 흔하게 쓰이는 용어인 '머신러닝'은 어떻게 만들어지게 된 것일까? 그 기원을 찾자면 1959년으로 가야 한다. 당시 IBM에서 근무하였던 인공지능 분야의 선구자, 아서 사무엘(Arthur Saumel, 1901 - 1990)은 본인의 논문인 <Some Studies in Machine Learning Using the Game of Checkers>을 통해 "머신러닝"이라는 용어를 처음으로 제안했다.


해당 논문에서 아서 사무엘은 머신러닝을 다음과 같이 정의한다.


"컴퓨터가 명시적으로 프로그래밍되지 않고 학습할 수 있도록 하는 연구 분야"
"Field of study that gives computers the ability to learn without being explicitly programmed"


그렇다면, 아서 사무엘이 머신러닝이라는 개념을 창안하기까지 무슨 일이 있었는지 한번 살펴보자.






아서 사무엘은 청년 시절, 벨 연구소(Bell Labs)에서 18년 동안 근무하며 마이크로파 분야에서 국제적으로 인정받는 권위자가 되었다. 보통 사람 같으면 여기서 안주하겠지만, 45세가 되던 시기에 "진공관이 곧 다른 것으로 대체될 것"이라는 확신하에 새로운 길을 모색한다. 1948년, 일리노이 대학의 전기공학 교수로 자리를 옮긴 그는 컴퓨터를 제작하는 프로젝트를 시작한다. 하지만 자금이 부족해지자 사무엘은 "컴퓨터가 체커를 플레이하도록 프로그래밍"해보는 것이 어떨까 생각을 한다. 체커는 아래 그림과 같이 서양권에서 흔히 하는 보드 게임으로, 체스판에서 흑과 백 돌을 가지고 서로 따먹는 게임이다. 체스보다 룰이 간단하여 누구나 쉽게 할 수 있다는 장점이 있다. 사무엘은 누구나 알고 있는 체커 분야에서, 그가 만든 프로그램이 체커 세계 챔피언을 이길 수 있다면, 그것이 주목을 받아 필요한 자금을 마련할 수 있을 것이라 생각했다.


머신러닝이란 용어를 탄생시킨 체커 프로그램 개발은 부족한 연구 자금을 보충하기 위해 시작되었다.


서양에서 흔히 하는 게임 체커(Checkers)


다음 해, 사무엘은 IBM으로 이직한다. 그는 여기서 IBM의 첫 대량 생산 컴퓨터인 IBM 701 개발 팀에 합류했다. 참고로 당시 IBM 700 시리즈의 개발을 담당한 이는 나다니엘 로체스터로, 다트머스 워크숍에도 참여한 바 있는 인공지능 선구자 중 한 명이다. 로체스터가 IBM 701의 전반적인 사양을 고민할 때, 사무엘은 로체스트가 제안한 구조를 사용하여 자신의 체커 프로그램을 다시 만들기로 결정했다. 사무엘은 이제 막 합류한 IBM에서 자신이 만든 체커 프로그램이 무시받을까 봐 두려워했다. 그래서 프로그램의 "학습" 부분을 설계하는데 전력을 다한다.


그렇게 해서 그는 기계가 학습을 하도록 프로그램을 만든 최초의 사람 중 한 명이 되었고, 머신러닝이란 용어를 처음 고안한 사람이 되었고, 인공지능 분야에서 업무를 수행한 최초의 사람 중 한 명이 되었다.


1952년, 드디어 사무엘은 IBM 701 컴퓨터에서 첫 체커 프로그램을 완성했다. 인공지능의 또 다른 선구자 중 한 명인 존 매카시에 따르면, IBM의 창립자이자 당시 사장이었던 토머스 J. 왓슨 시니어는 이 프로그램의 시연이 IBM 주가를 15포인트 올릴 것이라고 말했으며, 실제로 그렇게 되었다. 여기서 우리는 역사가 반복됨을 알 수 있다. 2016년, 딥마인드가 만든 바둑 인공지능 알파고가 세계 챔피언인 이세돌 9단을 이기자 구글의 주가가 올랐다.


1956년 2월 24일, 아서 사무엘은 자신이 만든 체커 프로그램과 함께 TV에 출연했다. 그는 생방송 아침 뉴스 프로그램에서 원격으로 IBM 701을 조작하며, 스튜디오에 있는 MC 및 체커 전문가와 함께 약 한 시간 동안 컴퓨터와 체커 게임을 진행한다. 사무엘의 TV 출연 몇 달 후, 여러 명의 컴퓨터 과학자들이 뉴햄프셔주 다트머스 대학에서 최초의 인공지능 워크숍을 개최했다. 이것이 바로 앞선 글에서도 살펴본 다트머스 워크숍이며, 여기에서 "인공지능"이란 용어가 처음으로 등장한다.


시간 순서가 헷갈리는 분들을 위해 타임 라인을 간단하게 정리해 보자. 아서 사무엘이 기계를 '학습'시켜 만든 체커 프로그램의 시연이 1956년 2월이었으며, '인공지능'이란 이름이 탄생한 다트머스 워크숍은 1956년 여름 진행된다. 그리고 아서 사무엘이 '머신러닝'이라는 이름을 창안하게 된 것은 더 훗날인 1959년이다.


TV에서 체커 프로그램을 직접 시연한 아서 사무엘




사무엘의 주요 관심사는 컴퓨터가 어떻게 학습할 수 있는지를 탐구하는 것이었다. 그는 "경험으로부터 학습하는 컴퓨터를 프로그래밍하는 것은 결국 많은 프로그래밍 노력을 줄이는 데 도움이 될 것이다"라고 이야기했다. 사무엘의 이러한 노력은 머신러닝의 초기 사례 중 하나였으며, 그는 자신의 연구 결과를 1959년 논문을 통해 이야기한다. 이 논문의 제목이 앞서 언급한 것처럼 <Some Studies in Machine Learning Using the Game of Checkers>이었으며, 머신러닝이란 용어가 처음 등장하는 역사적인 순간이다.


1959년의 역사적인 논문에서 사무엘은 자신의 머신러닝 접근 방식은 '신경망'이 할 수 없는 매우 구체적인 작업에 적합하다고 설명한다. 당시 등장했던 인공 신경망의 초기 모델보다 자신의 학습 방식이 더 뛰어나다고 이야기한 그는, 당시 인공 신경망은 벌레(정확히는 편형동물, flatworm)의 신경망보다 못하다며 평가절하한다.


사무엘이 만든 학습 방식으로 동작하는 체커 프로그램은 상대방의 모든 가능한 이동을 고려한다. 하지만 당시 IBM 701은 가장 강력한 컴퓨터 중 하나였음에도 불구하고, 메모리가 각 움직임의 가능한 모든 수를 계산하기에는 부족했다. 이를 해결하기 위해 사무엘은 세 단계까지의 앞선 수를 분석하여, 최선의 수를 선택하도록 제한을 걸었다. 그리고 점수 시스템을 도입하였다. 가장 유리한 환경을 만들수록 점수를 높게 받도록 '규칙'을 설정하여 프로그램이 고득점을 향해 나아가도록 설계하였다.


사무엘이 만든 알고리즘에서 가장 중요한 것은, 과거 게임을 학습하는 메커니즘을 도입한 것이다. 그의 프로그램은 승리와 패배 결과를 기록했으며, 이를 후속 프로그램 학습에 반영하였다. 프로그램은 당연히 많은 게임을 거칠수록 성능이 좋아졌다. 사무엘은 이러한 과정을 오늘날 인공지능의 중심으로 남아 있는 용어인 '머신러닝'이라 불렀다. 1962년, 성능 개선을 위해 수천 번의 게임을 거친 후, 사무엘의 체커 프로그램은 '체커 마스터'라는 별칭을 가진 로버트 닐리를 물리친다. (1965년에는 사람과의 대결에서 8경기 모두 패배하는 굴욕도 맛본다)


(좌) 머신러닝이 탄생한 논문 첫 페이지 (단독 저자의 위엄) / (우) 사무엘이 고안한 알고리즘 과정


사무엘의 알고리즘을 보면 오늘날 유행하는 머신러닝 기술이 하나 떠 오른다. 바로 "강화학습"이다. 강화학습은 머신러닝의 학습 유형 중 하나로, 주어진 목표를 달성하기 위해 시행착오를 반복하는 방법이다. 시행착오 과정에서 결과가 좋게 나타날 경우 보상을 주고, 결과가 나쁘면 페널티를 준다. 강화학습의 최종 목표는 받을 수 있는 보상을 최대화하는 것이다. 마치, 말을 훈련시킬 때 하는 방식인 '당근과 채찍'과 비슷하다.


사무엘의 프로그램은 마치 강화학습의 원형과도 같다. 앞선 수를 분석하여, 가장 점수가 높은 방식을 선택하는 것은 강화학습의 보상 과정과 유사하다. 또한, 여러 차례 반복 학습을 하여 프로그램을 개선하는 사무엘의 방식 역시, 오늘날의 강화학습이 그대로 사용하고 있다. 즉, 사무엘의 접근 방식은 강화학습이라는 머신러닝 기술의 하나로 여전히 잘 작동하고 있다. 그래서 강화학습의 대가인 리처드 서튼, 앨버타 대학의 교수는 사무엘의 연구를 "현재 AI와 직접 관련이 있는 최초의 작업"이라고 불렀다.


물론, 사무엘의 연구가 오늘날 관점에서 100% 옳은 것은 아니다. 그는 당시 신경망의 성능을 비판하였지만, 이후 인공 신경망은 화려하게 부활하여 딥러닝으로 진화하게 된다. 현대의 인공지능 역시 강화학습보다는 딥러닝에 더 치우쳐 있다. 하지만, 바둑에서 인간을 꺾은 알파고는 두 가지 방식을 결합했다. '딥러닝'과 '강화학습'을 함께 사용한 것이다. 체커에서 사람을 이긴 알고리즘을, 50년이 넘게 지난 시점에 바둑에서 사람을 이긴 인공지능이 차용하였다.


사무엘의 업적을 보다 보면 재밌는 비유가 하나 눈에 띈다. 그는 1959년 인공 신경망을 편형동물(flatworm)에 비유하였다. 아니, 편형동물보다도 못하다는 의견을 밝힌다. 그는 편형동물의 신경계가 당시 인간이 만든 가장 발전된 인공 신경망보다 매우 잘 조직되어 있다고 언급했다.


2024년, 알파고를 만든 딥마인드의 CEO 데미스 하사비스는 현재의 딥러닝 기반 인공지능을 고양이보다 조금 부족한 수준이라고 평가한다. 사무엘이 최초로 머신러닝 연구를 발표한 지 60년이 넘게 지난 지금, 편형동물보다도 똑똑하지 않다고 여겨지던 인공지능은 집 고양이와 비슷한 수준까지 발전해 왔다.

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