인공지능으로 가는 단계들

1959년에 MIT 인공지능 연구소를 설립한 그는 1961년에 중요한 논문을 발표했다.​5​ <인공지능으로 가는 단계들>이라는 제목의 이 논문은 새로운 이론을 제시하는 목적이 아니라, 인공지능 연구의 현주소와 방향을 정리하는 내용을 담고 있었다. 인공지능이 아직 걸음마 단계에 있던 시기에 이 논문은 젊은 연구자들을 끌어들이는 데 큰 역할을 했다.

민스키는 인공지능 연구 분야를 크게 5개로 구분하였다. 탐색Search, 패턴 인식Pattern-Recognition, 학습Learning, 계획Planning, 귀납법Induction의 5개 분야는 각각 독립적으로 연구의 주제가 되면서 동시에 인공지능이 발전해나가는 단계이기도 했다.


탐색Search은 주어진 문제에 대해 모든 가능한 경우의 수를 고려해보는 방식을 말한다. 이때 각 경우마다 답이 될 수 있는지 없는지를 판단할 방법이 반드시 있어야 한다. 한국어로 표현하자면 ‘무식하게 다해 보는 방법’이다. 예를 들어, x^2+2x+1=0 이라는 방정식의 답을 구하기 위해서 x에 모든 수를 대입해보는 식이다. 이 방법이 의미를 가지려면 납득할 만한 시간 내에 탐색을 끝낼 수 있어야 한다. 이와 관련해서 민스키는 재미있는 연구 경험담을 말한 바가 있다.

그가 MIT에서 두 번째로 받아들인 대학원생이었던 짐 스래글Jim Slagel은 MIT 1학년 미적분학 수업 수준의 문제를 풀 수 있는 프로그램을 작성했다. 그는 약 백여 개의 규칙을 정리했는데 여기에는 미적분학에 자주 등장하는 규칙 수십 개, 일반 대수 풀이에 자주 등장하는 규칙 수십 개, 그리고 이런 수학 규칙을 적용할지 말지를 판단하는 규칙 수십 개가 포함되어 있었다. 어떤 미적분학 문제가 주어지면 이 프로그램은 미적분학의 규칙과 대수의 규칙들을 차례차례 적용해보는 식으로 답을 구해나갔는데 의외로 좋은 결과를 보여주었다고 한다. 심지어 이 프로그램으로 그해 미적분학 시험을 본 결과, A 점수를 받아서 오히려 MIT 학부생 평균보다 좋은 성적을 보여줄 정도였다.​11​

하지만 가능한 모든 경우의 수가 너무 많아진다면 현실성이 없어진다. 대표적인 예가 체스 게임이나 바둑이다. 한 수를 놓을 때마다 생각할 수 있는 경우의 수가 너무 많기 때문에 이런 모든 경우의 수를 고려하다 보면 시간이 너무 오래 걸려서 도저히 정상적인 게임을 할 수가 없다.

패턴 인식Pattern-Recognition은 탐색의 한계를 극복하기 위한 방법이다. 문제의 특성에 맞는 해결 방법을 만들고 이 방법에 맞게 문제를 분류해야 한다. 이렇게 문제의 특성을 파악하여 접근하는 방식을 흔히 ‘휴리스틱heuristic하다​‡‡​‘고 하는데 민스키는 이 방식을 선호했다. 그는 인간의 뇌에서 시각을 처리하는 방식, 청각을 처리하는 방식, 언어를 처리하는 방식이 서로 다르다고 보았고, 각각에 맞는 접근 방식을 써야 한다고 생각했다.

학습Learning은 과거의 경험을 활용하는 방법이다. 주어진 문제와 유사한 문제를 이미 과거에 해결했다면 과거에 사용한 방법을 현재에 적용할 수 있을 것이다. 이것은 패턴 인식과 공존할 수 있다. 패턴 인식을 통해 문제를 분류한 다음, 특정 분류에 대해 과거에 사용한 해결책을 적용할 수 있을 것이다. 학습은 기계학습Machine Learning이라는 이름으로 현재 더 잘 알려져 있다. 학습은 본질적으로 과거의 경험을 문제 해결 방법에 내재화해야 하는데, 강화학습Reinforcement learning이 대표적이다.

주어진 문제가 너무 복잡하다면 작은 문제들로 쪼개어 처리하는 방법도 고려해봄 직하다. 작게 쪼개진 후에는 각각 앞에서 언급한 탐색, 패턴 인식, 학습 등의 방법으로 답을 구할 수 있다. 그런데 작은 문제들로 쪼갠 후의 복잡도가 오히려 증가하고 답의 정확도가 떨어진다면 의미가 없다. 그래서 복잡한 문제를 잘 분석하여 효과적으로 쪼개는 작업이 필요한데 이것을 계획Planning이라고 부른다.

이제 우리는 어떤 문제가 주어졌을 때, 필요하면 쪼개고Planning, 잘 분류하고Pattern-Recognition, 과거의 경험을 활용하여Learning, 답을 탐색Search할 수 있게 되었다. 그런데 과연 문제의 답을 구하는 것만이 ‘지능’이라고 할 수 있을까? 민스키는 ‘창조적’인 지능을 위해서 귀납법Induction을 제시했다. 이미 확보한 지식 혹은 규칙들을 사용하는 데 그치는 것이 아니라 여기서 새로운 지식과 규칙을 끄집어내는 것이다.

로봇 연구

MIT 인공지능 연구소를 세운 후에 그는 뛰어난 학생들과 함께 다양한 시도를 했다. 1960년대에는 인간의 능력을 대신할 수 있는 기계, 즉 로봇에 관심을 기울였다. 현실 세계에서 사용할 수 있으려면 기계에 눈과 손이 꼭 필요하다고 생각한 그는, 인간의 시각vision을 연구하면서 최초의 HMD(head-mounted graphical display)를 발명했고, 인간의 손과 팔을 흉내 내기 위해 유압으로 동작하는 로봇 팔을 제작했다.

상자 옮기기 실험 중인 마빈 민스키(1968년)​§§​

이런 장치는 인공지능 알고리듬을 시험하기 위해 필요한 도구였다. 카메라와 로봇 팔을 이용해서 그가 했던 대표적인 실험은 상자 옮기기이다. 여기저기에 작은 상자들이 배치된 공간에서 사람이 명령을 내리면 로봇 팔이 이를 실행하는 실험이다. 예를 들어 “오른쪽 끝에 있는 상자를 왼쪽 끝에 있는 상자 위에 올리시오”라는 명령을 내리면 컴퓨터는 이 문장을 해석해야 하고, 카메라를 통해 입력되는 영상에서 오른쪽 끝에 있는 상자와 왼쪽 끝에 있는 상자를 판별해내야 하며, 로봇 팔은 상자를 떨어뜨리거나 부서뜨리지 않고 지정된 위치로 옮겨야 한다.

인간이라면 3살짜리 꼬마도 할 수 있는 이 일을 막상 컴퓨터가 하려니 아주 어려웠다. 그는 상자를 시각적으로 인식할 때의 어려움을 이렇게 토로한 바가 있다.

그것은 해보니 몹시 어려운 일이었습니다. 당시 우리는 막 등장했던 텔레비전 카메라를 사용해서 물체를 인식하려고 했는데… 어려움이 있었습니다. 상자는 조금만 움직여도 (카메라에 찍히는) 모양이 달라졌죠. 때로는 그 위에 그림자가 생기기도 했고, 그림자가 짙을 때도 있고 옅을 때도 있었습니다. 상자끼리도 모양이 달랐죠… 때로는 카메라의 초점이 맞지 않아서 흐려지기도 했고 조명의 방향에 따라서는 붙어 있는 상자를 구분해주는 경계가 보이지 않기도 했습니다.​11​

현실 세계의 상자 옮기기는 기술적 한계로 인해 어려움을 겪었지만, 가상의 세계에서는 나름 좋은 결과물을 얻었다. 민스키의 로봇 연구에 함께 했던 시모어 페퍼트의 학생이던 테리 위노그라드Terry Winograd는 셔들루SHRDLU라는 시스템을 만들었다.​12​ 이 시스템도 역시 사람의 명령을 해석해서 상자를 옮기는 프로그램이었다. 차이가 있다면 이 상자가 컴퓨터 모니터 안에 있는 가상의 세계였다는 점이었다.

1 2 3 4 5 6