과학사상8호(1994년-봄) : 김진형 (한국과학기술원 교수 · 전산학), 범양사 출판부, Page 52~66
1. 인공지능의 정의
인공지능의 본산이라고 불리는 미국 MIT대학교의 민스키 (M. Minsky) 교수는 인공지능을 "사람이 수행했을 때 지능이 필요로 하는 일을 기계에 수행시키고자 하는 학문과 기술 " 이라고 정의하고 있다.1) 이러한 정의를 좀더 구체화하려면 사람이 수행했을 때 지능이 필요로하는 일이 무엇인가를 먼저 설명해야 할 것이다. 엄밀한 의미에서는 사람이 수행하는 데있어서 지능이 필요치 않은 일이란 없다. 매우 단순해 보이는 두 발로 걷는 것도 상상할 수 없을 정도의 복잡한 판단과정이 필요하다는 것은 여섯 개의 다리로 움직이는 기계의 제어 프로그램이 얼마나 복잡한가에서, 또 많은 종류의 동물 중에서 인간만이 서서 다닌다는 점에서 쉬게 유추할 수 있다. 하물며 인간을 가장 인간답게 하는 언어구사 능력, 물체의 식별 능력, 깊은 논리적 추론 능력 등이 고도의 지능을 필요로 할 것이라는 데에는 의심의 여지가 없다. 따라서 인공지능은 능력, 물체의 식별 능력, 논리적 추론 능력 등의 인간의 지적 능력을 기계가 갖추도록 연구하는 학문 · 기술이라고 정의하면 안전하다.
중·고등학생들에게 인공지능이 무엇인지를 설명할 때 나는 "컴퓨터를 좀더 똑똑하게 하고자 하는 연구 " 라고 소개한다. 이 정의는 평범하고 쉬베 이해할 수 있으면서도 민스키의 인공지능 정의보다도 훨씬 구체적이다. 즉 기계를 컴퓨터로 이해하고 있으며, '좀더' 라는 표현에서 구도의 지능활동을 연구 목표로하고 있다는 것을 암시하고 있다. 컴퓨터 시스템은 하드웨어와 소프트웨어의 집합체다. 여기서 소프트웨어란 기계가 수행해야 할 일을 순차적으로 기록한 프로그램을 일컫는다. 따라서, 지시된 일을 프로그램에 의하여 순차적으로 수행할 때컴퓨터는 지능적인 행동을 나타내는 것이다. 즉 지능적인 행위를 구현하는 것은 바로 프로그램이다. 그러므로 인공지능이란 지능적 행위를 얼마나 프로그램화 할 수 있는가를 연구하는 학문이라고 할 수 있다. 또한 '좀더' 라는 표현에서 인공지능이 항상 새로운 것을 추구한다는 것을 알 수 있다. 이는 인공지능을 연구하는 사람들을 매우 곤혹스럽게 한다. 어느 연구목표에 달성하고 나면 그것은 이미 인공지능이 아니라는 것이다. 즉 미지의 세계를 탐구하여 새로운 방법론을 추구하는 것을 인공지능이라 할 수 있다.
위에서 살펴본 정의는 '인공지능이 무엇을 하느냐' 에 근거를 두고 있다. 즉 무엇을 해야 한다는 공학적인 관점에서 인공지능을 '기술' 로서 정의하고 있다. 이러한 관점의 학자들에게는 비행기가 새처럼 날개를 펄럭이면서 날아가지 않더라도 새보다 더 잘 낳고 있다는 주장이 설득력 있게 들린다. 한편, 팔먼 (Fahlman) 을 비롯한 일부 학자들은 인지과학적 입장에서 인공지능을 '계산기법을 통하여 지능을 공부하는 것' 으로 규정하고 있다. 즉 인간이 갖고 있는 지능의 능력과 역할을 구명하기 위하여 계산모형을 사용하는 학문을 인공지능으로 보고 있다. 인지과학적 입장에서는 지능이 필요한 일을 인간이 어떻게 수행하는가에 관한 지슥을 오히려 인공지능의 방법론이 밝혀줄 것을 기대하고 있다. 물론 사람의 지능에 관한 새로운 지식이 인공지능에 많은 도움을 주리라고 믿는다. 인지과학적 관점에서 인공지능을 정의하는 학자들은 인공지능 시스템이 그 기능을 얼마나 잘 수행하느냐 하는 것과 동시에 사람이 하는 것과 얼마나 비슷한 방법론이냐에 커다란 관심이 있다. 즉 인공지능이라는 프로그램된 안간의 지능으로써 얼마나 인간의 지능을 흉내 (simulation) 낼 수 있는가에 그들의 학문적 관심이 있다.
인공지능 그 자체의 정의는 쉽지 않지만 지능을 갖춘 시스템의 생동특성은 쉽게 관찰할 수 있다. 이는 빛 그 자체의 정의는 어렵지만 빛이 있음으로써 일어나는 현상의 파악이 직감적인 것과 마찬가지다. 지능적 시스템의 행동 특성으로서 첫 번째로 지적하고 싶은 것은 융통성 (flexibility) 이다. 목표달성을 위하여 주어진 한 가지 방법론 이외에 다양한 대안을 갖고 있으며 상황이 좋지 않아 선택한 방법을 수행하기 어려울 때는 다른 대안으로 대처한다. 나아가 지능을 갖춘 시스템은 자동화 (Automation) 되어 있다. 적절한 상황에서 적절한 판단을 스스로한다. 마지막으로 지능 시스템은 최적성 (Optimality) 을 추구한다. 상황에 따른 최적 대안을 제시할 능력을 갖추고 있다. 이러한 지능적 시스템이 요구되는 성격, 즉 융통성, 자동화, 최적화를 갖추기 위하여 필요로하는 처리과정은 세 단계로 나누어볼 수 있다. 즉 1) 상황의 인식과 이해, 2) 판단, 3) 표현 및 행위다. 상황의 인식과 이해란 외부로부터 들어오는 신호를 분석하여 외부의 조선을 파악하는 과정이다. 상황을 파악한 후에는 사용한 여러 대안을 나열하고 선택한다. 그 다음 선택한 대안을 실행에 옮기는 표현 및 행위의 과정이 뒤따르게 된다. 이러한 관점에서 인공지능을 정의하자면 상황의 인식과 이해, 판단 및 표현을 통하여 융통성있고, 최적의 해를 제공하는 자동화 시스템을 구축하고자 하는 노력이라고 볼 수 있다.
2. 인공지능의 방법론
인공지능을 성취하기 위한 여러 방법론이 컴퓨터가 발명된 후 50 여 년간 부단히 제안되거 실험되어왔다.3) 새로운 방법론이 나올 때마다 가능성에 부풀어 흥분하고 잠시 후 그 한계를 파악하고는 실망했던 역사의 반복이었다. 즉 다양한 방법론의 부상과 침잠의 연속이었다고 할 수 있다. 생각하는 과정을 표현하는 언어로 수세기를 이어온 논리학이 50 년대 인공지능의 여명기로부터 중요한 방법론으로 사용된 것은 어쩌면 당여한 일인지도 모르겠다. 지금도 많은 학자들이 논리학의 표현력 향상과 논리학을 이용한 상황의 모형화에 연구를 집중하고 있다. 또한 수학적으로 잘 정의된 최적화 이론이 인공지능의 방법론으로 자주 쓰인 것은 너무나도 당연하다. 불확실한 상황에서의 의사결정을 위한 모형을 제공하는 확률적 방법론, 기하급수적으로 증가하는 경우의 수 중에서 최적 해를 효과적으로 선택하기 위한 탐색기법, 지식을 표현하고 이를 이용하여 고도의 판단 능력을 모사하는 지식처리형기법, 양극의 논리학을 극복한 퍼지논리, 신경세포의 구조에서 영행을 받은 인공신경망, 종의 번식을 모형화한 우전자 알고리듬, 그리고 최근에는 혼돈이론 등을 나열할 수 잇다.
인공지능이라는 넓은 우산 아래 오랜 동안 연구 · 개발되었던 여러 가지 방법론 중에서도 다음에 열거할 몇가지 대표적인 방법론에 대하여는 조슴 자세히 설명하고자 한다. 이방법론들은 지난 50년간 인공지능 연구의 기초기술로서 인식되어 많은 연구가 있었고 그 연구결과는 이미 인공지능의 확장에 큰 공헌을 했음은 물론 전산학의 타분야와 전산학 이외의 분애에도 막대한 영향을 끼쳤다.
1) 지식표현
인공지능이라는 학문의 분야가 시작된 1950 년대부터 지금까지 오랫동안 컴퓨터에 어떻게 '표현' 할 것인가에 관한 많은 연구가 집중되었다. 표현할 대상은 우선 해결하고자 하는 문제 그 자체로부터, 문제를 풀기위한 지식, 문제풀이의 효율을 높이기 위한 정보 등 모든 것을 포함한다. 컴퓨터에의 표현기법의 차이에 따라서 문제의 해결 여부는 물론 문제풀이의 효율과 일반성에서 많은 차이가 나기 때문에 일찍부터 지식 및 문제의 표현에 인공지능 학자의 관심이 집중되었다.
지식표현의 연구주네는 주어진 문제를 해결하기 위하여 무엇을 표현해야 하는가에서 시작된다. 작업을 수행하기 위하여, 융통성을 보이기 위하여, 또 스스로 행동하기 위하여 어떠한 지식과 정보가 표현되어야 하는가, 그리고 지식과 정보는 어떤 형태와 구조를 갖고 있는가에 관한 분석이 있어야 한다. 표현해야할 지식과 정보의 형대 및 구조가 알려졌으면 그것들에 적합한 표현기법은 어떠한 것이어야 하는가 등이 연구주제다. 인공지능 학자들간에는 선언적 형태의 지식 표현과 절차적 형태의 지식표현의 장단점에 관하여 오랜동안 논쟁이 있었다. 뚜렷한 결론없이 끈이 난 이 논쟁을 통하여 터득한 것은 지식 그 자체가 매우 다양한 형태를 갖고 있기 땨문에 어느 한 가지의 기법으로는 충분히 표현할 수 없다는 것이었다.
시스템의 구축하는 데 있어서 인공지능 시스템 개발자들이 항상 결정해야 하는 것은 얼마나 많은 지식을 명시적으로 표현할 것인가다. 이는 핵심적인 명제 (Axiom) 만흥 ㄹ명시적으로 표현하고 추론규칙에 의하여 명시적으로 표현하지 않는 사실도 기계적으로 생성해 낼 수 있는 대안이 있기 때문이다. 모든 필요한 사실을 명시적으로 표현해 놓는다면 방대한 양의 저장장소가 필요할 것이고, 그 반대로 대부분 추론에 의하여 도출하고자 하면 많은 시간이 소요되는 까닭에 적절한 중용을 취할 필요가 있다.
인공지능을 연구하는 사람들이 제안하고 실험했던 지식표현기법은 선언적 형태의 서술논리, 판단형 지식을 표현하기에 적절한 If ~ Then 형식의 규칙, 관련되는 개념을 하나의 틀 속에 넣고 이들간에 속성의 상속을 위한 계층적 구조를 형성하는 객체 / 틀 (object / frame) 기법, 개념들간의 관계를 망으로 표현한 의미 망(Semantic Network) , 전형적인 절차를 하나의 틀 속에 표현한 스크립트 (Script) 등이 있다. 이러한 지식표현기법은 데이터베이스 프로그래밍 언어의 발달에 큰 영향을 끼쳐서 서술논리에 근거한 데이터베이스와 프로그램언어, 또 객체 개념에 근거한 데이터베이스와 프로그램언어를 각각 발전시켰다.
지식표현의 연구 중 공학적인 관점에서 가장 문제점으로 부각되고 있는 것은 지식획득에 관한 사항이다. 어떻게 해야 전문가로부터 지식을 잘 획득할 수 있으며 또 그 획득한 지식이 기준에 갖고 있던 지식들과의 상충 혹은 포괄 여부 등의 검증과 그 결과에 따른 기존 지식의 수정 및 보완 등에 관한 연구가 주요과제다.
2) 탐색기법
탐색기법이란 생각할 수 있는 여러 가지의 경우를 나열하고 분석하여 최선의 선택을 찾는 문제해결 기법이다. 또한 이러한 방법은 적절히 사용하면 최적화에도 사용할 수 있다. 이러한 탐색기법을 현실문제에 적용할 때 부딪히는 문제점은 첫째로 기하급수로 증가하는 경우의 수를 어떻게 처리하는가에 있다. 즉 바둑과 같은 게임의 경우를 보면 "흑이 A에 두면 백이나 B나 C에 둘 것이고 백이 B에 놓이면 혹은 D에 놓고, 백이 C에 놓이면 혹은 E에 놓는다" 는 등의 경우에 따른 대응책을 트리 (Tree) 형태로 표현할 수 있고 이러한 트리구조에서 최적 경로가 어떠한가를 분석할 수 있다. 그러나 흑이 놓을 수 있는 경우가 수가 수백 가지에 이르고 각 경우에 따른 백의 대응책이 또 수박가지에 이르므로 네 수만 앞을 내다본다고 하더라도 그 경우의 수는 4 조 개를 넘어간다. 따라서, 그 모든 경우를 분석해본다는 것은 현실적으로 불가능하다.
탐색기법의 연구과제는 모든 경우를 분헉하지 않고도 최적 혹은 최적에 근사한 해를 찾는 방법에 관한 연구다 사능성이 높은 것부터 검색해 나가서 해를 발견했을 때 그 해가 최적 해이기 위해서는 어떠한 조건을 만족해야 하나, 어느 경로의 가능성을 평가하는 함수는 어떠한 성질을 만족해야만 옳은 해를 유도할 것인가, 국부적 정보만을 이용하여 탐색을 계속하여 해를 얻었을 때 그 해가 최적 해일 수 있는가. 최적해를 찾기가 힘들다면 최적은 아니더라도 적당히 좋은 결과를 도출하는 방법은 없는가 등등이다. 이러한 탐색기법의 연구는 최근에 병렬 탐색기법, 생물의 번식을 확률적으로 모형화한 우전자 알고리듬, 국부 정보만을 이용했을 때 최적 해를 찾지 못한 경우를 극복하기 위한 모의담금질 (Simulated Annealing) 등의 기법을 발달시켰다. 탐색기법은 필욜로하는 지식이 어떠한 형태로 표현되었는가를 불문하고 지능적 시스템의 문제풀이 엔진(Engine) 으로 활용되고 있다.
3) 추론의 자동화
인간의 추론 능력은 다양한 형태를 띠고 있다. 특히 상식이라고 불리는 지식은 매우 광범위하고 이에 사용되는 규칙도 다양하다. 따라서 이를 모형화하기 위해서는 다양한 접근 방법을 예상할 수 있다. 명시적으로 주어진 명제로부터 추론규칙을 적용하여 새로운 사실을 추론하는 과정의 자동화는 인공지능의 오랜 숙원이었다. 인공지능의 방법론으로 오랜동안 연구되어온 추론기법은 정성적 추론 (qualitative reasoning), 비단조 추론 (non-monotonic), 가능성 추론 (plausible reasoning), 인과관계추론 (causal reasoning), 경험적 추론 (case-reasoning) 등 다양하다. 다음에 대표적인 것 몇가지를 설명하도록 한다.
(1) 정성적 추론
돌을 위로 던지면 어느 정도 올라갔다가 다리 떨어지고, 던져올리는 힘이 크면 클수록 더 높이 올라간다는 것을 우리는 상식으로 알고 있다. 이러한 상식적 추론은 정확한 양적 표현이 필요치 않고 많은 경우 추상적 차원에서의 서술로서 충분하다. 정확한 양적 표현은 얻기도 힘들고 또 얻어졌다고 하더라도 복잡성 때문에 가치가 낮은 경우가 많다. 정성적으로 표현된 지식을 이용하여 추론함으로써 시스템의 작동에 대한 이해와 예측을 할 수 있도록 하고자 하는 것이 연구의 목적이다. 정성적 추론에 과한 연구과제는 상태를 어떻게 표현하는가, 상태변화가 어떻게 일어나는가, 그 결과는 어떻게 되는가, 그리고 인간관계는 무엇인가 등이다.
(2) 바단조 추론
추론 시스템이 동적인 환경에서 작동할 때, 즉 새로운 사실이 시스템에 알려지면 그것이 기존의 믿음과 연계되어 새로운 믿음을 창출하거나 기존의 믿음을 바꾸어주어야 할 필요가 생긴다. 이러한 시스템을 위해서는 기존의 단순한 정적인 추론기관이 아니라 새로운 형태의 추론 방법을 필요로 하게 된다. 기존 추론의 기본이 되는 일반 논리학에서는 하나의 사실이 추론되면 아무리 새로운 사실이 추가되더라도 사실로 남게 된다. 예를 들자면 "새가 난다" 라는 명제와 "타조는 새다" 라는 사실로부터 "타조는 난다" 라는 사실을 추론할 수 있다. 이러한 시스템에 관찰로부터 터득한 "타조는 날 수 없다" 라는 사실이 입력되면 어떻게 처리해야 하는가? "타조는 난다" 라는 추론된 사실과 "타조는 날 수 없다" 라는 입력된 사실간의 상호모순은 어떻게 극복되어야 하는가? 이러한 경우에 사람은 자연스럽게 "타조는 날 수 없다" 는 믿음을 취하고 "타조는 난다" 라는 사실을 부정하게 된다. 이러한 추론을 바단조 추론이라고 한다. 인공지능의 문제해결에 있어서 많은 경우 단순 추론이 부적합하다는 것은 잘 알려진 사실이다. 비단조 추론을 통하여 지능적 행위를 보일 수 있는 방법론의 연구가 활발하다.
(3) 가능성 추론
인간은 불확실하고 상화 상충되는 정보를 융합하여 그럴 듯한 결론을 도출하는 능력이 있다. 인공지능 시스템도 이러한 가능성의 추론능력이 요구된다. 불확실한 사실 혹은 믿음의 표현에 단순한 이진 논리가 부족하다는 것은 쉽게 수긍할 수 있다. 사실의 진위를 표현하는 데 있어서 이진 논리를 확장한 다양한 표현기법이 사용된다. 즉 여러 개의 중잔값을 사용하는 다치논리 (multivalued logic), 0 과 1 사이의 모든 값으로 확장한 확률과 퍼지값, 믿음의 정도를 상한과 하한으로 나타내는 구간표현 등등이다. 정보융합 기법의 기본이 되는 것은 하나 이상의 정보원의 정보를 통합했을 때의 믿음을 계산하는 방법과 불확실한 사실을 근거로 불확실한 규칙을 적용했을 때의 믿음을 계산하는 방법이다. 이 두가지 방법을 반복적으로 적용하여 다양한 정보원의 정보가 결합되고 전파되는 추론과정을 모형화한다.
4)인공신경망
신경조직의 기본적인 구성요서인 신경세표는 인간의 두뇌에 1010 ~ 1011개가 존재하며 각 신경세포는 1000 ~ 10만 개의 다른 신경세포와 연결되어 있다고 알려져 있다. 신경세포는 매우 단순한 계산능력밖에 없으며 처리 속도는 컴퓨터의 연산장치보다 훨씬 느림에도 불구하고 그 복합체인 두뇌는 인지적 처리, 패턴 인식, 언어 퍼리 등의 복잡한 일을 컴퓨터보다 훨씬 빠르게 잘 처리한다. 단순한 처리능력의 느린 신경세포들로 구성된 인간의 두뇌가 복잡한 일을 컴퓨터보다 빨리 처리할 수 있는 것은 강벽한 병렬성 때문이라고 믿고 있다.
지능적 업무를 효울적으로 수행하는 두뇌의 구조를 본떠서 인공적인 지능 시스템을 구축코자 하는 시도는 매우 당연하다. 인공신경망이란 많은 수의 뇌세포로 구성된 뇌신경망의 정보처리 능력을 계산 · 모형화한 것이다.4) 즉 간단한 계산능력을 가진 처리기들을 상호연결하여 외부에서 주어진 입력에 반응하는 정보처리기로 활용한다. 신경세포에 해당하는 퍼리기는 외부 혹은 입력단에 연결된 처리기로부터 들어오는 입력신호에 그 연결선의 가중치를 적용한 후 그들의 합을 비선형의 활성화 함수로 처리하여 출력을 생성한다. 생성된 출력신호는 출력단에 연결된 모든 처리기에 동일한 값으로 전달된다. 이와 같이 개개의 처리기는 매우 단순한 능력밖에 없으나 이들이 결합된 조직은 고도의 능력을 발휘하는 시스템이 된다. 즉 병렬적으로 수행하는 처리기의 연결관계에 능력이 주어지는 것이다. 이런 이유로 인공신경망적 방법론을 연걸주의 (connectionism) 라고도 한다.
인공시니경망 시스템에서는 시스템의 기능이 연결선 가중치의 분포에 따라서 결정된다. 따라서 원하는 기능의 시스템을 개발하기 위해서는 가중치의 분포를 설정해야 한다. 다행스럽게도 가중치의 분포를 점진적 새건에 의하여 구할 수 있는 방법론이 개발되어 있다. 연결선 가중치를 무작위로 초기화시킨 후에 훈련용 데이터를 적용해보면 시스템은 반드시 원치 않는 결과를 나타낼 것이다. 이때 각 가중치를 시스템 성능이 행상되는 방향으로 조금씩 수정한다. 이러한 국부적 정보에 의한 가중치의 수정이 최적 시스템에의 도달을 보장하지는 않지만 최소한 국부적 최적화는 보장된다. 최적 시스템에 도달하기 위해서는 잠시 성능을 떨어뜨리는 쪽으로 수정해야 할 경우도 발생한다. 이러한 가중치 수정의 과정을 모든 훈련 데이터를 적용하여 가중치 분포가 안정되면 작업을 종료한다. 이러한 과정을 학습 혹은 훈련이라고 한다. 인공신경망 방법론의 가장 큰 장점이 학습에 의하여 주어진 데이터로부터 원하는 성능의 시스템을 자동적으로 구척할 수 있다는데 있다고 주장하는 학자들도 있다.
문제를 푸는데 필요한 지식이란 처리기들의 상호연결과 각 연결의 가중치 (weight) 로 해석할 수 있다. 즉 지식이 어느 한 곳에 기호로 표현된 것이 아니라 연결선 속에 분산 · 저장되어 있다고 볼 수 있다. 이러한 구성에서는 연결선과 처리기가 일부 파손되더라도 성능이 저하될 뿐 시스템은 계속 작동할 가능성이 매우 크다. 이러한 면에서 신경망 시스템은 결함 허용 능력이 있다고 한다.
인공신경망의 방법론은 병렬젹으로 처리함으로써 신속처리 가능성, 학습에 의한 문제풀이법의 자동생성, 지식의 분산 · 저장에 의한 결함 허용등의 바람직한 범용적인 특성을 갖고 있으며, 기존의 기호처리적 기법이 별로 성공적이지 못했던 패턴인식, 연상 기억, 동시 다중 제약의 만족등의 문제에서 매우 만족할 만한 성과를 얻고 있다.
3. 범용성과 강력함
지난 50 여 년간 인공지능 방법론의 변천사를 볼 것 같으면 강력하고 (powerful) 범용성 (general) 있는 방법론을 찾는 탐구의 역사였다고 할 수 있다. 즉 우리의 두뇌 능력에 버금가도록 문제풀이 능력이 상력하면서도 여러 종류의 다양한 문제를 해결할 수 있는 범용성 컴퓨터 프로그램을 개발코자 하는 노력이었다고 할 수 있다. 그러나 강력함과 범용성에는 항상 반비례 관계가 있기 마련이다. 즉 여러 문제에 적용할 수 있는 범용성의 프로그램은 그 능력이 매우 미약해서 실용적으로 쓸 만한 것이 없고 강력한 능력의 프로그램은 그 적용 범위가 먀우 좁아서 새로운 문제를 만나면 잘 해결하지 못한다.
지난 50 년간의 인공지능 역사 속에는 강력함과 범용성 사이에 두 번의 커다란 방향 전환이 있었다. 1 세대라고 할 수 있는 70 년대 중반까지는 범용성 있는 방법론의 탐구가 연구의 목적이었다. 이 시대를 대표하는 작품으로서 GPS (General Problem Solver) 를 들 수 있다. 그 이름이 암시하듯이 모든 문제를 해결할 수 있는 프로그램을 개발코자 시도했는데 그 결과는 물론 미미했다. 이러한 방법론으로 다룰 수 있는 문제라는 것이 고작 나무토막을 순서대로 쌓는 정도였다. 이러한 연구를 통해서 강력하고 범용성 있는 문제풀이 방법론을 개발하기가 얼마나 어려운가를 모두가 실삼하게 되었다.
이러한 초기 시도의 반작용으로 나타난 것이 지식처리 기법 (Knowledgebased Approsch) 이다. 지능이란 지식과 이를 사용하는 추론기능이라보고 문제풀이에 필요한 지식을 적절히 표현하여 고성능의 프로그램을 구성하고자 하는 연구방향이었다. 이러한 방향을 선도했던 스탠퍼드 대학교의 파이겐바움 (E. Feigenbaum) 은 지능이란 저장된 정보를 필요로 할 때 끄집어내거 사용할 수 있는 능력이라고 주장했다. 업무를 지시할 때 어떤 비서에게는 어떻게 하로 일일이 지시해야 하는데 반해서 다른 비서에게는 무엇이 필요하다고만 해도 일이 진행된다고 하면 누구를 더 지능있다고 할 수 있겠는가라고 반문한다.
지식처리형 시스템에서는 문제풀이에 필요한 고도로 정제된 지식이 저장되어 있어야 한다. 그 지식을 이용하여 문제를 풀어가기 때문에 매우 높은 수준의 문제해결 능력이 있다. 그러나 이러한 시스템은 대부분의 경우 매우 좁은 영역의 문제만을 다룰 수 있다. 여러 가지 문제를 해결하기 위하여 필요로 하는 지시기은 매우 광범위해서 무억무엇이 필요한가를 미리 알 수도 없을뿐더러 알았다 하더라도 그 양이 방대하여 모두 표현하기도 어렵기 때문이다. 따라서 전문가 시스템은 만들 수 있어도 상식적인 추론을 하는 시스템은 구축할 수가 없다고 한다.
지식처리형 기법으로 구축할 수 있는 판단능력은 매우 높은 수준이기 때문에 현실적인 문제에서 실요적으로 쓰일 수 있게 되었다. 전무가 시스템으로 대표되는 이러한 방법론은 인공지능의 여러 문제, 즉 언어처리, 컴퓨터 시각등에도 핵심적인 방법론으로 활용되어 괄목할 만한 성능을 나타냈다. 실헐실 수준의 연구과제였던 인공지능을 산업현장으로 끌어들임으로써 많은 기업이 관십을 갖고 인공지능에 투자하는 계기를 만들어 준 것은 바로 지식처리형 기법의 덕택이었다.
그러나 지식처리형 방법론은 곧 인공지능 원론주의자들의 공격 대상이 된다. 그들은 징을 단순리 저장된 정보를 적절할 때 사용할 수 있는 능력이라고만 보는데 동의하지 않으며, 비록 고도의 능력은 보이지만 그 응용분애가 매우 협소하고 필요한 지식을 단순히 저장했다가 사용하느 수준의 저능력의 시스템이 인공지능 기술을 대표하는데에도 반발한다. 그들은 지식처리형시스템은 오직 한 가지 응용사계 (One Example) 뿐인 데모용 시스템인데 이러한 시스템을 현실의 문제에 적용하기 위해서는 적지 않은 노력이 지식을 모으로 또 표현하는데 소요되므로 시스템을 확장하거나 타 분야에 적용하는 것이 결코 단순한 문제가 아니라고 비판한다. 그들은 지식처리형 기법이 새로운 프로그래밍 기법의 하나로서 스프트웨어 공학적 가치는 인정하나 인공지능의 연구가 여기에 머무르는 것에는 동의하지 않는다. 인공지능의 연구는 좀더 근원적인 지적 능력을 구명하고 여러 문제에 공통적으로 사용할 수 있는 일반적인 방법론을 탐구해야 한다고 주장한다. 즉 인공지능의 연구가 강력함만의 추구에서 범용성의 동시 추구로 선회하는 것이다.
이러한 시기에 강력하게 대두된 것이 인공신경망의 방법론이다. 인공신경망 기법은 데이터만 제공하면 스스로 학습에 의하여 해결책을 만들어 갈 수 있기 때문에 지식을 모두 넣어주어야만 하는 지식처리형 시스템의 대안으로 생각하기에 충분했다. 인공신경망을 이용하여 논리적 사고 기능을 훈련시킬 수도 있고 패턴의 분류, 연상 기억 등 기존의 방법론으로는 해결하지 못했던 문제들을 해결할 수 있었기 때문에 인공신경망의 방법론은 강력하고 범옹성 있는 방법론으로 인식되어 많은 연구가 진행되고 있다.
4. 지식기반 시스템 및 자료기반 시스템 구축
지능형 시스템의 구축 방안은 크게 두 가지로 구분지을 수 있다. 이름을 붙이자면 한 그룹은 지식기반형이라고 할 수 있고, 다른 그룹은 자료기반형이라고 할 수 있다. 지식기반형 시스템 구축 방법은 시스템을 구축하기 위한 지식은 사람의 머릿속에 있고 그 지식을 어떠한 방법으로든지 컴퓨터에 이식할 수 있다는 철학에 기반하고 있다. 즉 지식이 문제를 해결하는 요체인데 이 지식은 시스템을 개발하는 사람의 머릿속에 있든가 혹은 시스템 개발을 도와주는 전문가의 머릿속에 있다는 것이다. 달리 말하자면 시스템 구축이란 인간의 머릿속에 있는지식을 컴퓨터에 옮겨놓는 작업이라고 생각한다. 이러한 방법으로는 수준급의 지능적 시스템을 쉽고 값싸게 구축할 수 있다. 그러나 고도의 시스템 구축에는 항상 지식부족이 문제가 되고 시스템을 확장시키기 위해서는 새로운 지식의 획득 과정이 필요한데 이 과정이 병목현상이 되고 있다.
한편 자료기반형 시스템 구축 기법이란 시스템을 구축하기 위하여 필요한 지식을 주어진 훈련 자료를 분석하여 자동적으로 획득할 수 있다는 철학이다. 지식이란 인간의 두뇌 속에서 자료가 추상화되고 정리된 것인데 이 과정을 주어진 훈련 자료를 이용하여 자동화하자는 것이다. 문제를 해결하는데 필요한 지식을 전문가로부터 구할 수 없거나 값이 비싼 경우에, 그러나 훈련용 모범자료를 쉽게 수할 수 있는 경우에 가용한 전략이다. 이러한 시스템 구축 기법은 통계적 방법론과 인공신경망적 방법론을 포괄하는데 이러한 방법론들은 사람으로부터의 지식 획득이 용이하지 않은 분야에서 유일한 대안이 되고 있다. 그 예를 카네기멜론 대학교의 음성인식 시스템 개발 사례에서 볼 수 있듯이 신호처리와 같이 지식의 기호적 표현이 쉽지 않은 영역에서는 지식기반형 시스템 구축보다 우수한 겅능을 보이고 있다.5) 이러한 방법론에서는 필요로 하는 자료를 획득하여 새로이 학습과정을 거침으로써 시스템의 확장이 가능하다. 자료로부터 지식을 추출하는 방법, 즉 훈련 혹은 학습과정이 이러한 방법론 연구의 핵심이 되는 것은 말할 나위가 없다.
5. 전망 및 결론
위에 언급한 여러 가지 방법론들은 그 나름대로 강점이 있고 특별히 잘 해결할 수 있는 문제의 종류가 있다. 또 그들은 모두 인공지능의 한꼐를 조금씩이나마 확장시켜줄 것들이다. 그러나 어느 한 방법론으로 인공지능의 높은 목표를 성취할 수 없었음은 자명하다. 인공지능의 목표를 달성하기 위해서는 앞으로도 계속적으로 새로운 방법론이 개발되고 시험될 것이다. 인공지능의 먼 앞날을 예측한다는 것은 실로 어려운일이다. 그러나 가까운 장래의 인공지능 기술은 예측 가능하지 않을까?
인공지능이라는 범주 속에서 연구되는 전문가 시스템 구축 기술, 음성 인식 기술, 문자 및 패턴 인식 기술, 영상 이해 기술, 자연어 처리 기술 등이 매우 특화된 방법론으로 계속해서 빠른 속도로 발전할 것이다. 각각의 시스템은 비록 좁은 영역이지만 곧 사람의 능력을 능가 혹은 버금가게 될 것이다. 그러나 그러한 시스템들이 다루는 문제의 특성에 따른 특화된 방법론을 사용하기 때문에 한 분야에서 성공적인 방법론을 다른 분야로 쉽게 일반화시킬 수는 없게 될 것이다.
한편 인공지능의 기초를 연구하는 학자들은 계속적으로 강력하고 범용성 있는 방법론을 탐구할 것이다. 그러나 지식처리형 시스템과 같이 강력하면서도 인공신경망과 같이 범용성 있는 방법론을 가까운 장래에 찾을 전망은 희박하다고 본다. 따라서 그들은 하나 이상의 방법론을 통합하여 사용코자 시도할 것이다. 이미 이러한 방향으로의 연구는 깊숙이 진전되고 있다. 신경망 기법으로 신호처리하여 기호를 생성하고 전통적인 기호처리 기법으로 추론하는 지능적 시스템 구조나 신경망 기법만으로 시스템을 구축할 때에 관리할 수 없을 정도로 증가하는 복잡도를 효율적으로 통제하기 위하여 기호처리식 방법론을 뼈대로 사용코자 하는 시도와 통계적 방법론을 근간으로 하되 구조적 지식으로 탐색 공간을 제한하는 것들이 대표적인 통합적 방법론이다.
인공지능의 연구로 얻어진 성과를 쉽고 값싸게 쓸 수 있도록 하는 연구 및 개발은 매우 빠른 속도로 진전될 것이다. 이러한 현상은 실용화에 가깝게 성공적으로 개발된 음성인식 기술, 문자인식 기술, 자연어 처리 기술 등에서 두드러지게 나타날 것이다. 이미 문자인식 기술과 음성인식 기술은 새로운 컴퓨터와 사람간의 인터페이스 기술로서 극소형 개인용 컴퓨터에서도 사용되고 있고 자연언어를 이해하는 기술은 다국어간에 번역, 자연언어로 컴퓨터와의 대화 등에 널리 활용되고 있다. 이러한 현상이 심화되면 곧 누구나 인공지능을 이용한 인식 시스템과 이해 시스템의 도움을 받게 될 것이다.
주
1) Winston, P. H., Artificial Intelligence (Addison Wesley, 1977, 1983) .
2) Stalling, N. A. et al., Cognitive Science : An Introduction (MIT Press, 1987) .
3) Barr and Feigenbaum, The Handbook of Artificial Intelligence, Vol. 1, 2, 3 (William Kaufmann Inc.) .
4) Rumelhart, McCleland, Parallel Distributed Processing, Vol. 1, 2 (MIT Press) .
5) Lee. K. F. et al., "An Overview of the Sphinx Speech Recognition System," IEEE Transactions on Acoustics, Speech and Signal Processing, Vol. 38, No. 1. (1990).
'인생과 노년생활' 카테고리의 다른 글
2017. 2. 1: 새겨야 할 말, 나에게도 큰딸에게도 (0) | 2017.02.01 |
---|---|
2016. 12. 31: 2016년 BLOG 결산 (0) | 2017.01.10 |
2016. 11. 1: 안과, 보건소, 쌍룡차서비스, ... (0) | 2016.11.01 |
2016. 9. 27: 대사증후군 검사결과 (0) | 2016.09.27 |
2016. 8. 24: 행복, 강아지와 고양이 (0) | 2016.08.24 |