ETC/AI

인공지능의 불확실성 & 베이지안 정리

범데이 2022. 1. 16. 14:35

1. 불확실한 세상

우리의 행동과 삶은 언제나 불확실성에 기반을 두고 있다. 미래는 언제나 불확실하며 지능 있는 생명체는 생존을 위해서는 불확실성을 제거하는데 모든 것을 집중한다. 불확실성은 앞으로 나타날 현상이나 일의 예측으로부터 나타난다. 예측이 곧 지능의 핵심 기능이다. 이는 뇌가 예측 기계라 불리는 이유이기도 하다.

 

불확실성은 '확실하지 않은 성질' 을 의미하며 정보의 부족, 애매한 정보, 잘못된 정보 등으로 인해 발생한다. 우리가 알고 있는 사실이나 정보가 100%로 확실하다고 할 수 있는 경우는 매우 드물다. 그만큼 대부분의 지식은 어느 정도의 불확실성을 포함하고 있다. 

 

인간의 지능을 흉내내는 컴퓨터의 경우 이러한 불확실성을 수학적으로 표현해 처리하고 이를 바탕으로 추론을 끌어내야 하는 과제를 안고 있다.

 

2. 불확실성의 유형

불확실성의 요인은 인간이 예측하거나 판단하는 데 필요한 자료, 정보, 지식, 경험에 따라 발생한다.

 

(1) 자료(Data)의 불확실성

  자료를 획득할 수 있는 기계 또는 센서 장치의 부정확성에서 기인한다. 따라서 이렇게 얻어진 자료는 오차를 포함하고 있다. 게다가 자료 수집 단계에서 관측되지 않은 미확인 자료들도 있으니 수집한 자료가 완벽하다고 할 수 없다.

 

(2) 정보(Information)의 불환전성

  무인 자동차의 경우 주행 시 발생하는 모든 상황에 대한 방대한 정보를 모두 다 입력받아 처리할 수가 없다. 따라서 일부의 정보만 받아들여 판단 해야 하므로 정보가 불완전하다고 할 수 있다.

 

(3) 지식(Knowledge)의 불확실성

  지식의 표현이 자연어로 처리될 때 인간이 사용하는 모호한 표현을 사용하게 되며 이 모호한 내용으로 인해 여러 가지 해석을 불러일으키게 된다. 또 시스템에 획득한 지식의 표현 및 저장 시 문제점으로 발생하기도 한다.

 

(4) 확률적 불규칙성

  예측 불가능한 요인에 따라 발생하는 불규칙성이다. 고속도로의 운전에서 갑작스럽데 튀어오는 돌멩이나 축구의 수비수가 자살골을 넣는 행동 등이 이에 해당한다고 볼 수 있다.

 

 

3. 불확실성의 표현: 확률

  불확실한 지식을 표현하는 방법은 이미 수학에서 배웠다. 통계를 바탕으로 하는 확률이다.

내일 눈이 올 확률이 70%라거나 10명 중 1명은 영화를 봤다는 표현은 불확실한 지식을 표현한 예라 할 수 있다.

 

전통적인 확률의 표현은 사건이 일어나는 가능성의 정도를 말한다. 어떠한 사건 A가 일어날 확률을 수식으로 표현하면 다음과 같다.

 

P(A) = 사건 A가 일어날 수 있는 경우의 수 / 일어날 수 있는 모든 경우의 수

 

주사위를 던져 주사위의 눈이 5가 나올 확률은 1/6이라는 것으로 쉽게 나타낼 수 있다. 이러한 경우는 반복적으로 실행할 수 있으므로 경험적 확률이라 할 수 있다.

 

그렇다면 'K라는 섬에서 아기가 태어났는데, 이 아이가 자라 올림픽에서 금메달을 딸 확률은 얼마나 될까?' 라는 문제는 주사위를 던질 때와는 달리 반복적으로 실행해볼 수 없다. 이 경우에는 일어나지 않은 일에 대한 확률을 '불확실성(Uncertainty)'의 개념으로 접근해야 한다. 주어진 사건과 관련 있는 여러 가지 사전 확률을 이용해 새롭게 일어날 수 있는 사후 사건 확률에 대해 추론하는 방법을 사용한다. 이를 '베이지안 확률(Bayesian Probability)'이라 한다.

 

4. 불확실성의 처리: 베이지안 정리

일어나지 않은 일에 대해 앞선 일이 영향을 미칠 확률은 베이지안 확률로 이야기를 할 수 있다. 베이지안 확률은 주어진 사건과 관련 있는 사전 확률과 사후 확률 사이에 관계를 조건부 확률로 이용해 새롭게 일어날 수 있는 사건을 추론할 수 있다. 실생활에서는 사전 확률보다는 사후 확률만 알고 있는 경우가 많아 바로 이를 활용해 계산하는 이론이다.

 

⦁ 사전 설계: 코호트(Cohort) 연구, 전향 연구
    - P(B | A): 원인(A)가 발행한 후 결과(B)가 나타날 확률
    - 사전(Prior) 확률 P(B | A): A(원인) -> B(결과)

⦁ 사후 설계: 대조 연구, 후향적 연구
    - P(A | B): 결과(B)가 나온 이후에 원인(A)일 확률
    - 사후(Posterior) 확률 P(A | B): B(결과) -> A(원인)

 

 

사전 확률과 조건부 확률을 이용해 사후 확률을 구하는 방법이 베이즈 정리다.

사전 확률 P(A) A일 확률이 있고
조건부 확률 P(B | A) = P(A∩B) / P(A) A일 때 B가 일어날 확률을 알고 있으면
사후 확률 P(B | A) = P(A∩B) / P(B), P(B) > 0 B일 때 A의 확률을 알 수 있다.

 

이제 사후 확률값을 구하기 위해 수학식으로 풀어보자.

P(B|A) = P(A∩B)/P(A) -> P(A∩B) = P(A)P(B|A)
P(B) = P(A)P(B|A) + P(A')P(B|A')
P(A|B) = P(A∩B)/P(B) = P(A)P(B|A)/P(A)P(B|A)+P(A')P(B|A')

 

해럴드 제프리스경은 "기하학에 피타고라스 정리가 있다면 확률론에는 베이즈 정리가 있다." 라고 말했다. 이처럼 베이즈 정리는 실제 실생활 문제해결에 많이 활용되고 있다.

 

 

베이지안 확률은 이메일 시스템에서 스팸메일을 거르는 스팸 필터 서비스에 많이 활용된다.

스팸 필터를 구현하는 방법을 살펴보자.

내가 받은 100개의 이메일 중 80%는 스팸이었다. 메일에 포함된 단어들을 분석해보니 95%의 스팸메일에서 '공짜'라는 단어를 볼 수 있고 정상적인 메일의 2%에서도 '공짜'라는 단어를 볼 수 있었다. 새로 받은 메일에 '공짜'라는 단어가 들어 있을 경우 이 메일이 스팸일 확률은?

 

먼저 문제를 수식화하자.

P(스팸|공짜) = P(공짜|스팸)P(스팸)/P(공짜)

 

이제 각각의 값을 구하고

P(공짜|스팸) = 0.95
P(스팸) = 0.80
P(공짜) = P(공짜|스팸)P(스팸) + P(공짜|정상)P(정상) = 0.95 * 0.80 + 0.02 * 0.20 = 0.764

 

원래의 식에 대입하면 답은 99.5%가 된다.

P(스팸|공짜) = 0.95 * 0.80 / 0.764 = 99.5%

 

'공짜' 가 포함된 메일을 스팸이라 분류한다면 정상적인 메일의 2%는 스팸메일이 되므로 이에 대한 방안이 필요하다.

 

 


#References

한선관, 류미영, 고태령, 고병철, 서정원, 놀랍게 쉬운 인공지능의 이해와 실습, 성안당(2021), p73-78.

반응형

'ETC > AI' 카테고리의 다른 글

기계학습, 분류⦁회귀⦁군집, 기계학습의 유형  (0) 2022.01.16