컴퓨터의 등장과 함께 시작된 인공지능의 역사는 지금까지 수많은 방법론들이 들고 나는, 혼돈의 그것이었다. 이제 연구자들은 한가지 방법에 매달리기 보다는 통합된 시각에서 각각의 분야를 구현하기 위한 방법론을 찾고 있다.
인공지능의 본산으로 불리는 미국 MIT의 마빈 민스키 교수는 인공지능을 "사람이 수행했을 때 지능을 필요로 하는 일을 기계에 수행시키고자 하는 학문과 기술"이라고 정의한다.
엄밀한 의미에서 사람이 수행하는데 지능이 필요치 않은 일이란 없다. 두발로 걷는 것처럼 매우 단순해 보이는 일도 상상할 수 없을 정도의 복잡한 판단과정이 필요한데, 인간을 인간답게 하는 언어구사능력, 물체의 식별능력, 깊은 논리적 추론 능력 등에 고도의 지능을 필요로 할 것이라는 것은 의심의 여지가 없는 일. 따라서 인공지능은 인간의 지적 능력을 기계가 갖추도록 연구하는 학문과 기술이라고 정의하는 편이 더욱 안전했을 것이다.
인공지능 자체의 정의는 쉽지 않지만 지능을 갖춘 시스템의 행동 특성은 쉽게 관찰할 수 있다. 지능적 시스템은 융통성의 행동특성을 가지고 있다. 목표달성을 위해 주어진 한가지 방법론 이외에 다양한 대안을 갖고 있으며, 상황이 어려워서 선택한 방법을 수행하기 어려울 때는 다른 대안으로 대처한다. 나아가 지능을 갖춘 시스템은 자동화돼 있어 상황에 따라 적절한 판단을 스스로 한다. 또한 지능 시스템은 최적성을 추구하기 때문에 상황에 따른 최적 대안을 제시할 능력을 갖추고 있다.
지능적 시스템이 요구하는 성격, 즉 융통성 자동화 최적화를 갖추기 위해 필요로 하는 처리과정은 세 단계로 나누어 볼 수 있다. 즉 상황의 인식과 이해-판단-표현 및 행위가 그것이다. 이러한 관점에서 인공지능을 정의하자면 상황의 인식과 이해, 판단 및 표현을 통해 융통성 있고 최적의 해(解)를 제공하는 자동화 시스템을 구축하고자 하는 노력이라고 볼 수 있다.
필자는 주변사람들에게 '인공지능이 무엇이냐'는 질문을 받으면 "컴퓨터를 좀 더 똑똑하게 하고자 하는 연구"라고 설명한다. 이 정의는 쉽게 이해할 수 있으면서도 민스키의 정의보다도 훨씬 구체적이다. 즉 기계를 컴퓨터로 이해하고 있으며 '좀 더'라는 표현을 통해 고도의 지능활동을 연구목표로, 항상 새로운 것을 추구한다는 것을 암시하고 있다.
컴퓨터 시스템은 하드웨어와 소프트웨어의 집합체다. 여기서 소프트웨어란 기계가 수행해야 할 일을 순차적으로 기록한 프로그램을 일컫는다. 지시된 일을 프로그램에 의해 순차적으로 수행할 때 컴퓨터는 지능적인 행동을 나타내게 되는 것이다. 따라서 지능적인 행위를 하는 것은 프로그램이다. 달리 말해 인공지능이란 지능적 행위를 얼마나 프로그램화 할 수 있는가를 연구하는 학문이라고 할 수 있다.
컴퓨터가 발명된 후 50여년간 인공지능을 성취하기 위한 여러 방법론이 부단히 제안되고 실험돼 왔다. 새로운 방법론이 나올 때마다 가능성에 부풀어 흥분하다가 잠시 후 그 한계를 파악하고는 실망했던 역사의 반복이었다.
'중용'이 해결책
지금까지 논의된 방법론에는 불확실한 상황에서의 의사결정을 위한 모형을 제공하는 확률적 방법론, 기하급수적으로 증가하는 경우의 수 중에서 최적해를 효과적으로 선택하기 위한 탐색 기법, 지식을 표현하고 이를 이용하여 고도의 판단능력을 모사하는 지식 처리형 기법, 양극의 논리학을 극복한 퍼지논리, 신경세포의 구조에서 영향을 받은 인공신경망, 종의 번식을 모형화한 유전자 알고리즘, 그리고 최근에 주목받고 있는 혼돈이론 등이 있다.
인공지능이란 학문 분야가 시작된 1950년 대부터 지금까지 이 분야 연구자들은 컴퓨터 표현 문제에 집중적으로 매달렸다. 여기에는 표현할 대상을 해결하고자 하는 문제 자체로 부터, 문제를 풀기 위한 지식, 문제풀이의 효율을 높이기 위한 정보 등등 모든 것을 포함한다. 컴퓨터에의 표현 기법 차이에 따라서 문제의 해결 여부는 물론, 문제풀이의 효율과 일반성에서 많은 차이가 나기 때문에 일찍부터 지식 및 문제의 표현에 인공지능 학자의 관심이 집중된 것이다.
시스템을 구축하는데 있어서 인공지능 시스템 개발자들은 매번 얼마나 지식을 명시적으로 표현할 것인가를 결정해야 한다. 이는 핵심적인 명제만을 명시적으로 표현하고, 추론 규칙에 의해 명시적으로 표현하지 않는 사실도 기계적으로 생성해 낼 수 있는 대안이 있기 때문이다. 필요한 모든 사실을 명시적으로 표현한다면 방대한 양의 저장 장소가 필요할 것이고, 그 반대로 대부분 추론에 의해 도출하고자 하면 많은 시간이 소요되는 까닭에 적절한 '중용'을 취할 필요가 있다.
한편 공학적 관점에서 가장 문제점으로 부각되고 있는 것은 지식 획득에 관한사항이다. 어떻게 해야 전문가로부터 지식을 잘 습득할 수 있으며, 또 그 획득한 지식이 기존에 이미 갖고 있던 지식들과의 상충되는지의 여부를 검증해야 하며 그 결과에 따라 기존 지식을 수정 및 보완할 연구를 수행해야 한다.
인공지능의 일반적인 문제풀이 방법론으로 탐색기법이 자주 쓰인다. 탐색기법이란 생각 할 수 있는 여러가지의 경우를 나열하고 분석해 최선의 선택을 찾는 방법이다. 탐색기법의 연구과제는 모든 경우를 분석하지 않고도 최적, 또는 최적에 근사한 해를 찾는 것이다. 최근에는 병렬탐색 기법, 생물의 번식을 확률적으로 모형화한 유전자 알고리즘, 국부 정보만을 이용했을 때 최적해를 찾지 못한 경우를 극복하기 위한 모의 담금질(simulated annealing) 등의 기법이 등장하고 있다. 탐색기법은 필요로 하는 지식이 어떠한 형태로 표현 됐는가를 불문하고 지능적 시스템의 핵심적인 문제풀이 엔진으로 활용되고 있다.
받아들일 수 없는 대표성
강력함과 범용성에는 항상 반비례 관계가 있게 마련이다. 즉 여러 문제에 적용할 수 있는 범용성의 프로그램은 그 능력이 매우 미약해서 실용적으로 쓸만한 것이 없고, 강력한 능력의 프로그램은 그 적용 범위가 매우 좁아서 새로운 문제를 만나면 잘 해결하지 못한다.
지난 50년간의 인공지능 역사 속에는 강력함과 범용성 사이에 두번의 커다란 방향 전환이 있었다. 일세대라고 할 수 있는 70년대 중반까지에는 범용성 있는 방법론의 탐구가 연구의 목적이었다. 이 시대를 대표하는 작품으로는 GPS(General Problem Solver)를 들 수 있다. 그 이름이 암시하듯 모든 문제를 해결할 수 있는 프로그램을 개발하고자 시도 했는데, 그 결과는 물론 미미했다. 이러한 방법론으로 다룰 수 있는 문제라는 것이 고작 나무토막을 순서대로 쌓는 정도였다.
이러한 초기 시도의 반작용으로 나타난 것이 지식처리기법(knowledgebased approch)이다. 지능이란 지식과 이를 사용하는 추론기능이라고 보고 문제 풀이에 필요한 지식을 적절히 표현해 고성능의 프로그램을 구성하고자 하는 연구방향이었다.
지식처리형 시스템에서는 문제풀이에 필요한 고도로 정제된 지식이 저장돼 있어야 한다.
그 지식을 이용해 문제를 풀어가기 때문에 매우 높은 수준의 문제 해결 능력이 있다. 그러나 이러한 시스템은 대부분 매우 좁은 영역의 문제만을 다룰 수 있다. 지식 처리형 방법론은 곧 인공지능 원론주의자들의 공격 대상이 된다. 원론주의자들은 지능을 단순히 '저장된 정보를 적절할때 사용할 수 있는 능력'이라고만 보는데 동의하지 않으며, 비록 고도의 능력은 보이지만 그 응용 분야가 매우 협소하고 필요한 지식을 단순히 저장했다가 사용하는 수준의 저능력인 시스템이 인공지능 기술을 대표하는데 반발한다. 그들은 지식처리형 기법이 새로운 프로그래밍 기법의 하나로서 소프트웨어 공학적 가치는 인정하나 인공지능의 연구가 여기에 머무는 것에는 동의하지 않는다. 인공지능의 연구는 좀 더 근원적인 지적 능력을 규명하고 여러 문제에 공통적으로 사용할 수 있는 일반적인 방법론을 탐구해야 한다고 주장한다.
새로운 대안, '인공 신경망'
이러한 시기에 강력하게 대두된 것이 인공 신경망 방법론이다. 인공신경망을 이용해 논리적 사고 기능을 훈련시킬 수도 있고 패턴의 분류, 연상기억 등 기존의 방법론으로는 해결하지 못했던 문제들을 해결할 수 있었기 때문에 인공신경망의 방법론은 강력하고 범용성의 방법론으로 많은 연구가 진행되고 있다.
신경조직의 기본적인 구성요소인 신경세포는 인간두뇌에 ${10}^{10}$에서 ${10}^{11}$개가 존재하며 각 신경세포는 1천-10만개의 다른 신경세포와 연결돼 있는 것으로 알려져 있다. 신경세포는 매우 단순한 계산 능력 밖에 없으며 처리속도는 컴퓨터의 연산장치보다 훨씬 느림에도 불구하고 그 복합체인 두뇌는 인지적 처리 패턴인식 언어처리 등의 복잡한 일을 컴퓨터보다 훨씬 빠르게 잘 처리한다. 단순한 처리 능력의 느린 신경세포들로 구성된 인간의 뇌가 복잡한 일을 컴퓨터보다 빨리 처리할 수 있는 것은 강력한 병렬성 때문이라고 믿어진다.
지능적 업무를 효율적으로 수행하는 두뇌의 구조를 본떠서 인공적인 지능 시스템을 구축하고자 하는 시도는 매우 당연하다. 인공신경망이란 많은 수의 뇌세포로 구성된 뇌신경망의 정보처리 능력을 계산 모형화한 것이다. 즉 간단한 계산 능력을 가진 처리기들을 상호 연결해 외부에서 주어진 입력에 반응하는 정보처리기로 활용한다. 신경세포에 해당하는 처리기는 외부, 혹은 입력단에 연결된 처리기로부터 들어오는 입력신호에 그 연결선의 가중치를 적용한 후 그들의 합을 비선형의 활성화 함수로 처리해 출력을 생성한다. 그리고 생성된 출력 신호는 출력단에 연결된 모든 처리기에 동일한 값으로 전달된다.
인공신경망 시스템에서는 시스템의 기능이 연결선 가중치의 분포에 따라 결정된다. 따라서 원하는 기능의 시스템을 개발하기 위해서는 가중치의 분포를 설정해야 한다. 다행스럽게도 가중치의 분포를 점진적 개선에 의해 구할 수 있는 방법론이 개발돼 있다. 연결선 가중치를 무작위로 초기화시킨 후에 훈련용 데이터를 적용해보면 시스템은 필경 원치 않는 결과를 나타낼 것이다. 이때 각 가중치를 시스템 성능이 향상되는 방향으로 조금씩 수정하게 된다. 이러한 가중치 수정의 과정을 모든 훈련 데이터에 적용해 가중치 분포가 안정되면 작업을 종료한다. 이러한 과정을 학습, 혹은 훈련이라고 한다.
인공신경망의 방법론은 병렬적으로 처리함으로 인한 신속처리 가능성, 학습에 의한 문제 풀이법의 자동생성, 지식의 분산 저장에 의한 결함 허용 등의 바람직한 범용적 특성을 갖고 있으며 기존의 기호처리적 기법이 별로 성공적이지 못했던 패턴 인식, 동시 다중 제약의 만족 등에서 괄목한 성과를 얻고 있다.
낙관도 비관도 거부하는 미래
지능형 시스템의 구축 방안은 크게 두가지로 구분된다. 이름을 붙이자면 첫번째 그룹은 지식기반형이라고 할 수 있고 다른 그룹은 자료기반형이라고 할 수 있다. 지식기반형 시스템 구축방법은 시스템을 구축하기 위한 지식은 사람 머리 속에 있고 그 지식을 어떠한 방법으로든 컴퓨터에 이식할 수 있다는 철학에 기반하고 있다. 이러한 방법으로는 수준급의 지능적 시스템을 쉽고 값싸게 구축할 수 있다. 그러나 고도의 시스템 구축에는 항상 지식 부족이 문제가 되고 시스템을 확장시키기 위해서는 새로운 지식의 획득과정이 필요한데, 이 과정에 병목현상이 일어난다.
한편 자료 기반형 시스템 구축기법이란 시스템을 구축하기 위해 필요한 지식을 주어진 훈련자료를 분석해 자동적으로 획득할 수 있다는 철학이다. 지식이란 인간의 두뇌 속에서 자료가 추상화되고 정리된 것인데, 이 과정을 주어진 훈련 자료를 이용해 자동화 하자는 것이다. 신호처리와 같이 지식의 기호적 표현이 쉽지 않은 영역에서는 지식 기반형 시스템 구축보다 자료기반형이 우수한 성능을 보이고 있다. 이러한 방법론에서는 필요로 하는 자료를 획득해 새로이 학습 과정을 거침으로써 시스템 확장이 가능하다.
그렇다면 앞으로 인공지능 연구는 어떤 방향으로 진행할 것인가. 이 일은 실로 어려운 일이다. 그러나 가까운 장래의 인공지능 기술은 어느 정도 가능하지 않을까.
인공지능이라는 범주 속에서 연구되는 전문가 시스템 구축 기술, 음성인식 기술, 문자 및 패턴 인식기술, 영상 이해 기술, 자연어 처리 기술 등이 매우 특화된 방법론으로 계속 빠른 속도로 발전할 것이다. 그러나 그러한 시스템들은 특화된 방법론을 사용하기 때문에 한 분야에서 성공적인 방법론을 쉽게 다른 분야로 일반화시킬 수는 없을 듯하다.
한편 인공지능의 기초를 연구하는 학자들은 계속적으로 강력하고 범용성 있는 방법론을 탐구할 것이다. 그러나 지식 처리형 시스템과 같이 강력하면서도 인공 신경망과 같이 범용성의 방법론을 가까운 장래에 찾을 전망은 희박하다. 따라서 그들은 하나 이상의 방법론을 통합해 사용코자 시도할 것이다.
이와 함께 인공지능의 연구로 얻어진 성과를 쉽고 값싸게 쓸 수 있도록 하는 연구 및 개발은 매우 빠른 속도로 진척될 것이 틀림 없다. 이러한 현상은 실용화에 가깝게 성공적으로 개발된 음성 인식기술 문자인식기술 자연어 처리기술 등에서 두드러지게 나타날 것으로 보인다.