스포일러 경고 기능이 추가됐습니다.
(펼침 메뉴 > 설정에서 변경 가능)
게티어 문제라는 유명한 주제가 있다. 인식론과 지식, 학습이나 심신 문제Mind-body problem 등에 관심이 있다면 한 번쯤 들어봤을 법한 유명한 문제인데, 우리가 어떤 것을 안다고 말하기 위한 연역적인 조건이 매우 허술하다는 것을 보여주는 것이다. JTB(Justified True Belief)라고도 불리는 이 문제 자체가 여러 보강과 그에 대한 반례를 통해 사실상 해결 불가능한 문제로 넘어간 만큼 이 주제를 길게 말할 생각은 없지만, 요점은 우리의 학습과 지식에 대한 연역적 정당화가 영 도움이 되지 않는다는 것이며, 이런 식으로 논리의 한계가 여러 분야에서 드러났다. 19~20세기에 드넓게 확장된 논리는 20세기 후반부에는 더 이상 학문의 주역이 될 수 없었지만, 그래도 여전히 많은 영역에서 기틀로서 남아 있었다. 그리고 21세기에는 어쩌면 그보다도 더 축소될지도 모른다. 학습과 지식에 대한 새로운 파라다임으로 기계 학습이 새로운 트렌드로 떠오른 탓이다.
<기계 학습을 다시 묻다>는 바로 이 기계 학습을 현재 우리가 보고 있는 눈부신 성과와 별개로, 학습과 지식에 대한 접근법으로 이해할 수 있도록 제안하는 책이다. 저자는 수십 년간 기계 학습을 연구하며 얼추 거의 맞는Probably Approximately Correct; PAC 학습을 제안하였고, 이 방법론이 기계 학습의 기초가 되어 튜링상을 받았다. 이것을 단순히 기계 학습이라는 하나의 실용적 학문에서의 기여로 국한한다면 그리 흥미가 없을 수는 있지만, 꼭 그렇지는 않다. 반대로 기계 학습이 우리의 학습과 밀접하게 연관되어 있음을 한 번 생각해볼 필요가 있다. 특히 우리가 학습한 지식이, 기계 학습의 결과로 배운 지식을 비판하는 것과 동일한 지점에서 비판될 수 있다는 점과 함께. 우리는 정말로 무엇을 엄밀히 판단하여 아는 걸까? 우리의 앎은 대체로, 아마도 그럴 가능성이 높다는 휴리스틱의 결과물이 아닐까? 만약 그렇다면, 이 휴리스틱은 어떤 과정을 거쳐서 형성된 것일까?
먼저 이 PAC 학습이라는 것이 어떤 것인지를 대략적으로 설명하자면, 이것은 주어진 입력이 무엇에 속하는지 판단할 수 있는 가설을 만드는 것을 목표로 하는 알고리즘이다. 그 가설은 하나의 다항식으로, 여러 차수의 변수들의 합으로 입력받는 표본 사이에 하나의 경계선을 그어 입력들을 구분한다. 현재의 가설 함수는 새 입력에 대해 정답을 맞출 수도 있고, 반대로 틀릴 수도 있지만 그 경우 가설은 그 예시에 맞춰 조금 수정된다. 주어진 표본에 대해 이 과정을 반복하였을 때, 임의의 수준의 정확도를 갖는 가설이 생성될 확률을 원하는 수준 이상으로 높일 수 있다면 이는 PAC 학습 가능한 문제이다. 엡실론-델타 논증이 극한값을 정의하는 것과 비슷한 방식으로 이 역시 얼마든지 정교해질 수 있는 형태로 학습을 정의하고 있다. 많은 문제들이 실제로 PAC 학습 가능하며 현재 우리에게 익숙한 딥 뉴럴 네트워크 상에서의 학습 역시 다항식 대신 퍼셉트론을 사용하여 조금씩 학습해나간다.
이 일련의 수학적 과정은 생명의 진화 과정을 생각해볼 때도 유의미하다. 유전적 변이를 통해 다양하게 생겨나는 생물체들의 집단 속에서 각각의 생물체들의 생존과 사망은 그 생물체의 유전자가 환경에 제시하는 가설이 올바른지 그른지를 판단하는 잣대가 되며, 그 집단의 유전자 풀은 환경과의 적합도를 반영하여 수정된다. 물론, 환경은 어느 정도 일정해야 하며 적합도가 높아질 수 있는 어떤 규칙과 같은 것이 존재해야 할 테다. (이를테면, 이 변화된 환경에서는 열에 더 잘 버티거나, 땅에 잘 숨어야 한다, 같은.) 이것이 단순한 비유가 아닌 이유는 그 자그마한 변화가 실제로 빠른 시간 내에 큼지막한 진화를 야기할 수 있음을 기계 학습을 통해 설명할 수 있기 때문이다. 단순히 찍어서 나오는 50%의 확률보다 아주 약간이라도 정확도를 높일 수 있는 약한 학습이 가능하다면, 그 반복을 통해 상술한 PAC 학습과 같은 강한 학습이 가능하며, 그 시간은 유의미할 정도로 짧다. “환원 불가능한 복잡성”을 운운하는 진화론에 대한 비판을 포함해, 진화론을 넘어서는 그 이상의 이론을 요구하는 경과 시간의 문제도 해결되는 셈이다.
동시에, 우리의 지능이라는 것이 이런 방식으로 학습된 것이 아닌가, 하는 질문을 스스로에게 던져볼 수 있다. 아기가 태어난 이후 우리와 같은 지능을 가질 때까지의 기간 동안 아이는 빠르게 학습을 해나가며 여러 지식을 얻는데, 학습 과정에서 아이는 많은 실수를 하고, 그것을 바로잡아주는 교사가 있다. 이 과정이 기계 학습에서 담보하는 것과 과연 다를까? 카너먼과 같은 학자들이 우리가 지식들을 종합하여 판단을 내리는 주체라기보다는, 그러한 지식들을 통해서 형성된 머릿속에 있는 어렴풋한 느낌을 꺼내는 것에 더 가까우리라 분석한 것처럼, 학습과 지식에 대한 우리의 관점은 연역적인 이성에서 점차 귀납적인 직관으로 이동하고 있다. 이것은 기계 학습에 대한 현대의 연구가 단지 인공지능 뿐 아니라 일반적 지능에 대한 연구가 될지도 모른다는 것을 의미한다. <기계>에서도 언급하듯, 우리는 아직 우리의 지능을 어떻게 정의해야 할지에 대해서도 분명한 합의를 보지 못하고 있다. 논리 영역이 우리에게 가장 빠르게 분명해졌을 뿐, 그 밖의 다양한 능력, 우리가 우리의 능력이라고까지는 생각도 못한 능력들이, 실제로는 참 복잡하고 흉내내기 힘든 탓이다.
이런 의미에서 우리는 인공지능을 우리가 어떻게 받아들여야 할지에 대해 생각하는 것보다는, 우리 자신을 우리가 어떻게 받아들여야할지를 생각해볼 필요가 있다. 우리, 과거로부터 이어지는 사회 속에서 그 문화를 체득하고 있으며, 동일한 질문에 대해 매번 서로 다른 답변을 하고, 지금도 계속 무언가를 학습하고 있는 듯한 우리는, 과연 어떤 존재라고 생각해야 할까?
요즘 불확실성 어쩌구 확률적 사고 어쩌구 베이지안 어쩌구 하는 게 핫하긴 한가 보네ㄷ
몇 안되는 컴퓨터과학 책이네요
재미있어보인다