컴퓨터가 스스로 더 똑똑해질 수 없는 이유 – 테드 창 (2/2)
2021년 4월 13일  |  By:   |  과학  |  No Comment

(테드 창, 뉴요커)

원문 보기

컴퓨터 소프트웨어를 개발하기 위해서는 컴파일러라는 프로그램이 필요합니다. 컴파일러는 사람이, 예를 들어 C라는 언어로 짠 소스 코드를 컴퓨터가 이해할 수 있는 실행 가능한 프로그램으로 바꾸어줍니다. 만약 당신이 사용하는 C 컴파일러가 마음에 들지 않는다고 가정합시다. (그 컴파일러를 컴파일러제로라고 부릅시다.) 컴파일러제로는 당신이 짠 소스코드를 실행 가능한 프로그램으로 바꾸는 데 너무 오랜 시간이 걸리며, 그 결과 컴파일된 프로그램이 실행되는 데도 긴 시간이 걸립니다. 당신은 당신이 더 나은 컴파일러를 만들 수 있다고 생각하고 더 효율적인, 최적화된 컴파일러를 만듭니다.

당신은 그 최적화된 컴파일러를 C로 짰고, 따라서 그 소스코드를 컴파일러제로를 통해 실행 가능한 프로그램으로 바꾸었습니다. 이 프로그램을 컴파일러원이라고 합시다. 당신이 짠 이 컴파일러원으로 다른 소스코드를 컴파일하면, 그 결과 더 빠르게 작동하는 프로그램이 만들어집니다. 문제는 컴파일러원 자체는 컴파일러제로에서 컴파일된 프로그램이기 때문에 작동에 긴 시간이 걸린다는 것입니다. 그럼 어떻게 해야 할까요?

바로 컴파일러원으로 컴파일러원을 만들어낸 소스코드를 컴파일하는 것입니다. 이렇게 만들어진 컴파일러를 컴파일러투라고 합시다. 컴파일러투는 자신의 작동 시간도 짧아졌고, 자신이 컴파일한 프로그램 또한 빠르게 동작하는 특징을 가지고 있습니다. 와우! 당신은 자가발전하는 컴퓨터 프로그램을 만들었습니다!

하지만 발전은 여기까지입니다. 이제 원래의 컴파일러 소스코드를 컴파일러투로 컴파일해도 컴파일러투가 하나 더 만들어질 뿐입니다. 이 방법으로 더 빠른 컴파일러쓰리를 만드는 것은 불가능합니다. 지금보다 더 빠른 프로그램을 컴파일하는 컴파일러를 만들려면 또 다른 방법을 찾아야 합니다.

컴파일러로 자신을 컴파일하는 이 방법은 부트스트랩이라는 방법으로, 1960년대부터 사용된 것입니다. 컴파일러를 최적화하는 작업의 역사는 이미 꽤 오래됐으며, 부트스트랩 역시 컴파일러의 성능 향상에 큰 역할을 했습니다. 하지만 가장 큰 향상을 만들어낸 것은 부트스트랩보다 인간 프로그래머에 의한 것입니다. 물론 컴파일러는 인공지능 프로그램과는 전혀 다른 프로그램이지만, 적어도 다른 프로그램을 결과물로 내놓는 프로그램이라는 점에서, 그리고 그 과정에서 최적화를 가장 중요한 목적으로 만들어졌다는 점에서 지능의 폭발적 증가라는 논리에 있어 하나의 선례로 생각할 수 있습니다.

프로그램의 사용 목적을 잘 알수록 우리는 그 프로그램을 더 잘 최적화할 수 있습니다. 개발자는 종종 특정한 프로그램 일부를 직접 최적화하며, 이는 그 프로그램이 해야 하는 일을 컴파일러보다 더 잘 알기 때문에 가능한 일입니다. 최적화를 가장 잘하는 컴파일러들은 특정한 영역에 최적화된 언어인 도메인 특화 언어(domain-specific language)로 쓰인 것들입니다. 예를 들어, 이미지 처리 프로그램에 특화된 할리드(Halide)라는 언어가 있습니다. 할리드 컴파일러는 특정한 분야에만 사용할 수 있으므로 때로 사람만큼 혹은 사람보다 더 뛰어난 결과를 만들어냅니다. 하지만 할리드 컴파일러는 이미지 처리에 최적화되어 있기 때문에 컴파일러 프로그램을 만들어내는 기능이 부족하며, 따라서 자기 자신을 컴파일하지는 못합니다. 컴파일러를 만들기 위해서는 범용의 언어가 필요하지만, 범용 컴파일러는 인간 개발자보다 최적화 능력이 떨어집니다.

범용 컴파일러는 어떤 프로그램이든 컴파일할 수 있습니다. 문서 편집 프로그램의 소스코드를 집어넣으면, 문서 편집 프로그램이 나옵니다. MP3 플레이어 소스코드를 집어넣으면 MP3 플레이어가 나옵니다. 1990년대에 등장한 웹브라우저처럼 어떤 개발자가 아직 우리가 알지 못하는 완전히 새로운 프로그램의 소스코드를 여기에 집어 넣는다 하더라도 이 범용 컴파일러는 그 새로운 프로그램을 만들어냅니다. 즉, 컴파일러는 인공지능이라 할 수는 없지만, 적어도 인간과 어떤 공통점을 가지고 있습니다. 바로, 처음 보는 입력에 대해서도 대응할 수 있다는 것입니다.

이를 오늘날의 AI 프로그램과 비교해봅시다. 예를 들어, 체스 게임을 하는 AI를 생각해봅시다. 체스는 입력과 출력이 정해져 있으며, 한가지 목적을 위해 최적화하는 것은 매우 쉬운 일입니다. 퀴즈쇼에서 답을 하는 AI 프로그램도 마찬가지입니다. 여러 종류의 게임을 할 수 있는 몇몇 AI 프로그램이 있지만, 여전히 이들이 할 수 있는 영역은 상대적으로 매우 좁습니다. 반대로, 어떤 입력이 주어질지, 혹은 어떤 정답이 필요한지 알 수 없는 AI 프로그램을 만들어야 한다고 생각해봅시다. 우리는 이 프로그램을 무엇에 최적화시킬지 알 수 없으며, 따라서 이 프로그램의 성능을 최적화하기는 결코 쉽지 않은 일입니다.

이런 범용 프로그램을 얼마나 최적화할 수 있을까요? 어느 정도까지는, 한 번도 접해보지 못한 상황을 포함한 가능한 모든 상황에 대해 최적화를 할 수 있을지 모릅니다. 하지만 “기계 지능의 폭발적 증가”라는 생각에는 이 최적화에 한계가 존재하지 않는다는 생각이 들어있습니다. 이는 아주 강력한 주장입니다. 이런 범용 프로그램의 무한한 최적화를 주장하기 위해서는, 특정한 작업에 최적화된 예가 아닌 다른 근거를 가져와야 할 것입니다.

물론 내가 이야기한 어떤 주장도, 기계 지능의 폭발적 증가가 불가능함을 보인 것은 아닙니다. 사실 나는 그런 증명이 가능할지도 의문입니다. 이것은 무언가가 불가능한지에 증명 이야기가 아닙니다. 무엇이 어떤 믿음에 대한 올바른 정당화인가에 관한 것입니다. 안셈의 존재론적 증명에 대한 비판자들은 신이 없다는 것을 증명하지 않았습니다. 그들은 안셈의 증명이 신의 존재를 믿을 수 있는 정당한 이유를 제공하지 못한다고 말한 것입니다. 즉, “초지능 기계”를 그렇게 정의한다고 해서, 우리가 그런 기계를 만들 수 있으리라고 말할 수 없다는 것입니다.

——

재귀적 자가발전이 실제로 유효한 경우가 있습니다. 바로 인류의 문명 전체를 하나로 볼 때입니다. 이는 한 명 한 명의 지능과는 다른 이야기입니다. 1만 년 전 태어난 인간과 오늘날 인간의 지능이 다를 이유는 없습니다. 그들은 오늘날의 우리와 거의 같은 능력을 갖췄을 것입니다. 하지만 우리는 1만 년 동안 발전한 기술을 축적했고, 그 기술에는 물리적인 것 외에 지적인 것들도 있습니다.

아라비아 숫자와 로마 숫자를 비교해봅시다. 아라비아 숫자는 자릿수를 위치로 표시함으로써 곱셈과 나눗셈을 훨씬 쉽게 만들었습니다. 당신이 곱셈 대회에 나간다면, 아라비아 숫자를 쓰는 것이 훨씬 유리할 겁니다. 그렇지만 나는 아라비아 숫자를 사용하는 사람이 로마 숫자를 사용하는 사람보다 더 영리한 사람이라 말하지 않을 것입니다. 같은 논리로, 볼트를 조일 때는 펜치를 가진 사람보다 스패너를 가진 사람이 더 잘 조이지만, 그렇다고 스패너를 가진 사람이 힘이 더 세다고 말할 수 없을 겁니다. 누가 더 힘이 센지를 말하기 위해서는 같은 도구를 가지고 경쟁해야 합니다. 아라비아 숫자와 같은 인지적 도구도 비슷한 이득을 줍니다. 사람들의 지능을 비교하기 위해서는 같은 도구를 가져야 합니다.

단순한 도구는 복잡한 도구를 만들 수 있게 해줍니다. 이는 물리적 도구가 아닌 인지적 도구에도 적용됩니다. 복식 부기와 평면 좌표계와 같은 그런 도구를 인간은 수천 년 동안 만들어왔습니다. 즉, 인간 자체의 지능이 꼭 높아진 건 아니라도 이런 인지적 도구의 힘을 빌려 우리는 더 강력한 도구를 만들어왔습니다.

이런 방식으로, 개인의 차원이 아닌 인류 문명 전체의 차원에서 재귀적 자가발전은 일어납니다. 뉴튼이 미적분을 발명한 다음 더 영리해졌다고 말하기는 힘듭니다. 그는 미적분을 발명할 만큼 처음부터 영리했을 것입니다. 미적분은 그가 이전에는 풀지 못했던 문제들을 풀게 해줬지만, 미적분을 통해 큰 이득을 본 것은 그가 아니라 나머지 인류였습니다. 뉴턴 이후의 사람들은 미적분을 통해 크게 두 가지 이득을 보았습니다. 하나는 단기적인 이득으로 뉴턴 이전에는 풀 수 없던 문제를 풀 수 있게 된 것입니다. 다른 하나는 장기적인 이득으로 이 미적분을 바탕으로 더 강력한 수학 기술을 발전시킨 것입니다.

이렇게 다른 이의 업적 위에 새로운 업적을 쌓을 수 있는 인간의 능력이 바로 내가 인간과 동일한 능력의 AI 프로그램이 100년 동안 혼자 일한다고 해서 엄청난 결과를 만들어낼 것이라는 주장을 믿지 않는 이유입니다. 홀로 연구하는 개인도 엄청난 발견을 할 수 있지만, 그의 업적은 거기에서 멈춥니다. 인류는 다른 사람의 업적에서 영감을 얻어 새로운 업적을 쌓아왔습니다. 꼭 직접 협력할 필요도 없습니다. 어떤 분야든, 많은 이들이 거기에 몰두할 때 새로운 결과가 나왔습니다.

DNA의 예를 봅시다. 제임스 왓슨과 프랜시스 크릭은 1953년 DNA 발견 이후에도 수십 년간 연구를 계속했지만, 이후의 학문적 진전은 그들이 아닌 다른 이들이 이룩했습니다. DNA 시퀀싱 기술을 발명한 것도, DNA 조합을 가능하게 한 PCR 기술을 만든 것도 다른 이들이었습니다. 왓슨과 크릭을 무시하려는 것이 아닙니다. 그저, 우리가 왓슨과 크릭에 해당하는 AI를 가지고, 인간보다 100배 빠른 속도로 돌린다고 하더라도, 전 세계에 DNA를 연구하는 분자생물학자들이 내놓을 결과만큼 좋은 결과를 기대하기 힘들다는 것입니다. 혁신은 고립에서는 발생하지 않습니다. 과학자들은 다른 과학자들의 연구에서 영감을 얻습니다.

혁신의 속도는 스스로 AI를 만드는 인공지능 기계가 등장하지 않아도 앞으로도 더 빨라지고 계속될 것입니다. 어떤 이들은 이 현상도 지능의 폭발적 증가라 부를지 모르지만, 나는 이를 인지적 기술과 물리적 기술을 포함하는 기술의 폭발적 증가라 부르는 것이 더 정확하다고 생각합니다. 컴퓨터 하드웨어와 소프트웨어는 가장 최근 등장한 인지적 기술이며, 이들은 충분히 강력하지만 그렇다고 스스로 기술적 폭발을 이끌어낼 정도로 강력하지는 않습니다. 이를 위해서는 사람들이 필요하며, 그 사람의 수가 많을수록 더 좋습니다. 한 명의 영리한 사람에게 더 뛰어난 하드웨어와 소프트웨어를 주는 것도 도움이 되겠지만, 진정한 혁신은 모든 이가 이를 가졌을 때 이루어집니다. 오늘날 우리가 경험하는 기술의 폭발은 수십억 명이 이 인지적 도구를 사용함으로써 나타난 것입니다.

——

그렇다면 AI 프로그램이 이런 기술의 폭발을 일으킨 인간을 대신해 디지털 세상에서 더 빠른 폭발을 만들 수 있을까요? 그럴 수도 있습니다. 하지만 이를 위해 어떤 조건이 필요할지 생각해봅시다. 아마 성공을 위한 가장 확실한 방법은 인간의 문명 전체를, 곧 각자의 분야에서 일하는 80억 명의 인간에 해당하는 AI 프로그램을 소프트웨어 세상에 복제해야 할 겁니다. 하지만 이는 거의 불가능한 일입니다. 따라서 대부분의 혁신이 일어나는 인간 문명의 특정 부분을 골라내야 합니다. 이렇게 생각해 봅시다. 맨하탄 프로젝트를 위해서는 몇 명의 사람이 필요할까요? 이 질문은 맨하탄 프로젝트에 동원된 과학자가 몇 명인지 묻는 것이 아닙니다. 얼마나 많은 인구가 있어야 그 인구에서 맨하탄 프로젝트에 동원할 만한 수준의 충분한 수의 과학자를 얻을 수 있을까를 묻는 것입니다.

예를 들어, 물리학 박사가 수천 명 중 한 명 나온다는 사실에서, 물리학 박사 수준의 AI는 인간과 비슷한 수준의 AI 수천 개가 있어야 나올 것이라 생각할 수 있습니다. 즉, 맨하탄 프로젝트를 성공시키는 데는 1942년 당시의 미국과 유럽의 인구수 만큼이 필요했습니다. 오늘날에는 훌륭한 연구실은 전 세계에서 재능있는 이들을 끌어모으며, 따라서 구성원이 이 두 대륙으로 한정되지 않습니다. 즉, 오늘날 인류가 이루고 있는 만큼의 혁신을 이루기 위해 필요한 숫자는 80억에서 크게 줄어들지 않을 것입니다.

아직 우리는 한 사람의 능력에 해당하는 AI를 어떻게 만들어야 할지 전혀 알지 못합니다. 적어도 예상할 수 있는 미래에는, 기존 기술을 바탕으로 새로운 기술을 만들어내는 인류의 기술적 폭발 상황에서 “인간에게 필요한 최후의 발명품”이 탄생할 가능성은 전혀 없습니다. 어떤 면에서 이는 다행스러운 일입니다. 굿의 주장과 달리 “인간이 크게 뒤처질”일은 없기 때문입니다. 하지만 초인간 지능 AI가 인류 문명을 파괴할 가능성을 걱정할 필요가 없는 것과 같은 이유로, 초지능 AI가 인류를 구원하리라 기대해서도 안 됩니다. 좋든 나쁘든, 인류의 운명은 우리의 손에 달려 있습니다.

1부로