컴퓨터를 사람처럼 똑똑하게 만드는 쉬운 방법은 세상에 존재할 수 있는 모든 지식을 입력하는 것입니다. 하지만 아쉽게도 그 모든 지식을 일일이 나열하기도 어렵고 찾아낸 지식을 컴퓨터에 몽땅 집어 넣을 수도 없습니다. 아무리 수학을 잘 하는 수학자도 모든 수학문제를 모조리 암기할 수는 없습니다. 대신 수학자는 중요한 공식과 예제 문제를 이해해서 새로운 유형의 문제를 만나면 자신의 노하우와 공식을 이용해서 문제를 해결합니다.

 

Rule based 시스템

인공지능을 실현하고자 했던 초창기의 과학자들도 중요한 사실들과 새로운 사실들을 계산해 낼 수 있는 규칙을 컴퓨터에 입력하고 문제를 해결하게 하는 방식을 선택합니다. 이런 시도를 규칙기반 Rule based 시스템 또는 전문가시스템 Expert System 이라고도 합니다. 환자의 여러 조건에서 병을 진단하는 시스템이나 광물의 위치를 찾아내는 시스템 등 몇몇 제한된 영역에서는 전문가시스템이 마치 사람처럼 판단하고 새로운 사실들을 찾아내기도 합니다.

하지만 풀어야 할 문제가 점점 많아지고 일반적인 유형의 문제를 해결하려다보니 만들어야 하는 규칙도 많아지고 또 어떨 때에는 규칙들 사이에 모순이나 충돌이 생기기도 해서 규칙기반시스템은 확장성을 가질 수 없었습니다. 희망차게 시작됐던 인공지능에 대한 도전이 큰 장애물을 만나게 됩니다.

규칙기반시스템은 비록 제한적이긴 하지만 잘 정의된 영역에서는 오류 없이 원하는 답을 찾을 수 있다는 장점이 있지만 사람이 그런 규칙들을 미리 찾아내어 정의해야 한다는 한계를 지니고 있습니다.

 

통계 모델

이런 상황에서 새로운 돌파구를 다름아닌 확률,통계에서 찾아내게 됩니다. 통계 모델은 비록 100% 정확한 답을 주지는 않지만 여러 후보들 중에서 상대적으로 확률이 높은 것을 알 수 있어서 좀 더 복잡한 문제에 사용될 수 있습니다. 요즘 많이 사용되는 구글의 자동번역시스템이나 애플의 시리는 사람의 복잡하고 다양한 언어를 다루는 시스템입니다.  규칙으로 언어를 처리하려는 시도들이 과거에 있었지만 높은 정확도를 보여주지 못해서 현실 세계에서 사용할 수 있는 실용화된 시스템이 나오지 못했습니다. 구글이나 애플은 규칙기반을 벗어나 통계에 기반한 새로운 시스템으로 새롭게 도전을 했고 결과적으로 매우 유용한 서비스를 만들게 됩니다.

통계 학문은 광범위하고 오랫동안 많은 이론들이 연구되어서 전문가가 아니면 이해하기 어렵습니다. 고등학생들을 많이 괴롭히는 과목이기도 하지요. 하지만 인공지능을 이야기 할 때 그리고 요즘 거의 모든 지능형 시스템이 통계에 기반하고 있기 때문에 이해를 할 필요가 있습니다.

 

조건부 확률의 이해

많은 통계 이론 중에서 특히 조건부확률 또는 베이지언확률 ( Bayesian probability )은 인공지능 분야에 결정적인 역할을 하게됩니다. 많은 지능형 시스템들이 과거 데이터를 기반으로 미래를 예측하고 위해서 베이지언 네트워크를 사용하고 있습니다.

조건부확률은 고등학교 때 배웠던 것인데요, 어떤 사건 A가 일어 났을때 다른 사건  B가 발생할 확률입니다. P(B|A) 라고 표기를 합니다. 이것은 사건 A와 사건 B가 동시에 일어나는 P(A & B) 와는 다릅니다. 학창시절에도 많이 헷갈렸는데요 아직도 집중해서 생각하지 않으면 오락가락합니다.

공이 들어 있는 주머니를 예로 들어보겠습니다. 두개의 주머니 A, B 가 있다고 생각합시다. 주머니 A에는 빨간공이 7개, 파란공이 3개 들어있고요, 주머니 B에는 빨간 공이 5개, 파란 공이 5개 들어있습니다.

이럴 때 어느 주머니에서 뽑은지는 모르고 (통계에서 어느 주머니인지 모르고 뽑는다는 것은 무작위 Random 하게 선택하는 것을 의미합니다 ) 공을 하나 선택했는데 그 공이 빨간 공이었습니다. 이럴 때 주머니 A에서 그 빨간 공을 뽑았을 확률은 어떻게 되는가를 계산할 때 조건부 확률을 이용합니다.

P(A | 빨간공) = P(A) P (A & 빨간공) / P(빨간공)

위의 공식을 이용하면 조건부 확률을 구할 수 있습니다.  이 조건부확률이 인공지능 관점에서 어떻게 해석되는지에 대해 설명드리겠습니다.

 

조건부 확률과 인공 지능

위의 예에서, 빨간공을 데이터로 생각할 수 있습니다.  우리가 주위에서 관찰할 수 있는 사건들인 것이죠.  특정 사건이 있어났을 때 그것이 일어나게 된 동기 또는 가정을 A 또는 B 라고 할 수 있습니다.

규칙기반 시스템에서는, 예를 들어  A 이면 B 이다, B 이면 C 이다 라는 전제조건에서 그 유명한 삼단논법을 사용하면  A 이면 C 이다라는 한치의 오차도 없는 결론을 만들어 낼 수 있습니다. 하지만 현실 세계에서는 그런 명확한 규칙을 만들어 내기가 어려워서 통계적인 방법을 쓰는데 바로 그럴 때 조건부 확률을 사용합니다. 즉, 관찰되는 데이터가 있는데 그것이 발생한 원인이나 혹은 그 데이터를 발생시킬 조건이 여러 개일 때 그 중에서 제일 가능성이 높은 것을 찾아냅니다.

친한 친구 철수와 영희가 있는데 이 친구들은 가끔 전화하거나 문자를 보냅니다. 철수는 문자보다는 전화를 많이 하고, 영희는 문자를 많이 보내는 편입니다.  스마트폰에 ‘새로운 메세지가 도착했습니다’라고 알람이 왔을 때 그 문자가 철수에게서 왔는지 영희에게서 왔는지를 조건부확률을 사용해서 예측할 수 있습니다.

이 예측이 맞을 확률을 높히기 위해서는 더 많은 통계데이타가 요구됩니다. 각종 통계데이터가 잘 정의되어 있다면 비교적 적은 데이터로도 앞으로 일어날 일을 예측하거나 그 원인을 더 정확하게 찾을 수가 있습니다. 최근 구글이나 애플이 난제로 여겨졌던 음성인식이나 기계번역 분야에서 일정 성과를 낼 수 있었던 것은 과거에 비해 많은 통계 데이터를 확보할 수 있었기 때문입니다.

 

우리가 열심히 시리를 통해서 이것저것 물어볼 때 우리는 그 서비스를 이용하는 것이기도 하지만 동시에 애플에게 더 많은 통계 데이터를 만들어 주고 있는 것입니다

.

최근 각종 센서의 발달로 많은 현상들이 그냥 사라지지 않고 데이터의 형태로 남게 됩니다.  그것이 보통 계산 방식으로는 다루기 어려울 정도로 많아질 때 빅데이터라고 부르기도 합니다. 데이터가 많아지면 통계적 자료가 풍부해지게 되고 따라서 분석하거나 예측하는 인공지능이 점점 더 정교해집니다. 이 과정에서 우리가 고등학교 때 배운 간단해 보이는 조건부 확률이 아주 결정적인 역할을 하고 있습니다.

앞으로 더 많은 데이터가 쌓이게 되고 더 정확하게 확률을 계산하게 되면 점차 인공지능이 예측하는 미래가 정확해지게 됩니다. 간단해보이는 수학공식 하나가 인류의 미래를 결정지을 수도 있는 인공지능의 핵심단추라는 것이 재미있습니다.

 

2주에 한번 최신 콘텐츠 마케팅 뉴스를 받아보세요

 

 

Leave a reply