프로그래밍[Univ]/인공지능

[인공지능] 불확실성과 베이지 추론

Cloud Travel 2012. 11. 7. 13:52

* 불확실성

 - 사람이 사용하는 정보는 불완전하고, 모순되기도 한다.

 - 부사, 형용사의 수치화가 정확히지 않으며 그 경계 또한 모호하다.

 - 불확실성은 믿을 만한 결론에 도달하기 위해 필요한 정보 부족이라고 할 수 있다.

 - 전문가 시스템에 저장되는 지식은 불확실하게 될 경우가 많다.

  > 부정확한 언어 : 위에서 말했듯이 부사, 형용사의 수치화가 힘들며 이로 인해 데이터의 모호함을 유발한다.

  > 알려지지 않는 데이터 : 알려지지 않은 데이터에 대해서는 근사적 추론을 진행한다. 이로인해 나온 결과는 불완전하다.

  > 상관관계의 표현 : 모든 관계가 IF-THEN형식으로 표시되지 않는다. 

  > 전문가들의 내용을 함축 : 지식 병목현상으로 각 전문가마다 의견이 다르고 이에 대한 진위를 밝히기가 힘들다.

 - 이러한 불확실성을 없에기 위해서 수학적으로 완벽한 확률(베이지 규칙)을 이용한 방법과

   사람과 비슷한 형식으로 생각(확신도 이론)하는 방법이 나오게 되었다.


* 확률적 접근

 - 자연현상에는 쓸만하지만, 사람이 관련되면 많이 틀리게 된다.

 - 베이지 규칙 : 특정 사건을 상호 배타적인 사건들에 대한 종속적인 사건으로 확장해 나갈 수 있다.

 

* 베이지 추론

  Rule) IF E is true then H is True.(P percent)

  // E가 참일 경우 H는 P의 확률로 사실이 된다

  > E가 일어날 확률도 존재 할 것이다. 이로 인해 계산이 복잡해지고, 확률이 전파가 된다.

  > 각 증거간의 의존 관계를 계산해내기가 힘들다.

  > 통상적으로 H는 가설을 나타내며, E는 가설에 대한 증거로 나타내진다.
  > 증거가 모두 독립 사건이라고 가정했을 때, 증거가 발생했을 때 가설이 발생할 확률의 결합확률로 구한다.

  > 여러 증거가 주어졌을 때 이로 인해 발생할 가설에 대한 확률을 구하는 방식이다.

  ex) 감기, 독감, 몸살과 그 증상에 대한 통계적 조사로 다음과 같은 표를 구했다고 한다. 

    의사가 환자에 대해서 날이 지나감에 따라 E2, E1, E3순서로 증상을 발견 했다면, 각각의 날에 의사는 환자의 병을 

    무엇으로 판단 할 것인가?(계산의 편의상 소수 2자리까지 반올림)

   

    - 최초 기침 증상을 보이는 환자가 나타났다. 과연 의사는 어떤 판단을 할 것인가?

    P(H1|E2) = P(E2|H1)*P(H1) / { P(E2|H1)P(H1) + P(E2|H2)P(H2) + P(E2|H3)P(H3) } 

                  = 0.9 * 0.4 / { 0.9*0.4 + 0.7*0.35 + 0.5*0.25 } = 0.36 / 0.73 = 0.49

    P(H2|E2) = P(E2/H2)*P(H2) / { P(E2|H1)P(H1) + P(E2|H2)P(H2) + P(E2|H3)P(H3) }

                  = 0.7 * 0.35 / { 0.9*0.4 + 0.7*0.35 + 0.5*0.25 } = 0.245 / 0.73 = 0.34

    P(H3|E2) = P(E2/H3)*P(H3) / { P(E2|H1)P(H1) + P(E2|H2)P(H2) + P(E2|H3)P(H3) }

                  = 0.5 * 0.25 / { 0.9*0.4 + 0.7*0.35 + 0.5*0.25 } = 0.125 / 0.73 = 0.17

    >> 확률이 가장 높은 감기로 판단을 한다.

    - 이튿날 환자가 열이 나기 시작했다.

    P(H1|E1,E2) = P(E1|H1)*P(E2|H1)*P(H1)

                     / { P(E1|H1)P(E2|H1)P(H1) + P(E1|H2)P(E2|H2)P(H2) + P(E1|H3)P(E2|H3)P(H3) }

                       = 0.9*0.8*0.4 / { 0.9*0.8*0.4 + 0.7*0.5*0.35 + 0.5*0.3*0.25 } = 0.288 / 0.488 = 0.59

    P(H2|E1,E2) = P(E1|H2)*P(E2|H2)*P(H2)

                     / { P(E1|H1)P(E2|H1)P(H1) + P(E1|H2)P(E2|H2)P(H2) + P(E1|H3)P(E2|H3)P(H3) }

                       = 0.7*0.5*0.35 / { 0.9*0.8*0.4 + 0.7*0.5*0.35 + 0.5*0.3*0.25 } = 0.1225 / 0.488 = 0.25

    P(H3|E1,E2) = P(E1|H3)*P(E2|H3)*P(H3)

                     / { P(E1|H1)P(E2|H1)P(H1) + P(E1|H2)P(E2|H2)P(H2) + P(E1|H3)P(E2|H3)P(H3) }

                       = 0.5*0.3*0.25 / { 0.9*0.8*0.4 + 0.7*0.5*0.35 + 0.5*0.3*0.25 } = 0.0375 / 0.488 = 0.08

    >> 확률이 가장 높은 감기로 판단을 한다.

    - 환자 관찰후 3일째 되는날 환자의 입술이 마르는 것을 확인했다.

    P(H1|E1,E2,E3) = P(E1|H1)*P(E2|H1)*P(E3|H1)*P(H1) 

        / { P(E1|H1)P(E2|H1)P(E3|H1)P(H1) + P(E1|H2)P(E2|H2)P(E3|H2)P(H2) + P(E1|H3)P(E2|H3)P(E3|H3)P(H3) }

                           = 0 / { 0.4*0.8*0.9*0 + 0.35*0.50*0.70*0.70 + 0.25*0.30*0.50*0.90 } = 0

    P(H2|E1,E2,E3) = P(E1|H2)*P(E2|H2)*P(E3|H2)*P(H2) 

        / { P(E1|H1)P(E2|H1)P(E3|H1)P(H1) + P(E1|H2)P(E2|H2)P(E3|H2)P(H2) + P(E1|H3)P(E2|H3)P(E3|H3)P(H3) }

                           = 0.35*0.50*0.70*0.70 / { 0.4*0.8*0.9*0 + 0.35*0.50*0.70*0.70 + 0.25*0.30*0.50*0.90 } = 0.08575 / 0.1195 

                           = 0.72

    P(H1|E1,E2,E3) = P(E1|H1)*P(E2|H1)*P(E3|H1)*P(H1) 

        / { P(E1|H1)P(E2|H1)P(E3|H1)P(H1) + P(E1|H2)P(E2|H2)P(E3|H2)P(H2) + P(E1|H3)P(E2|H3)P(E3|H3)P(H3) }

                           = 0.25*0.30*0.50*0.90 / { 0.4*0.8*0.9*0 + 0.35*0.50*0.70*0.70 + 0.25*0.30*0.50*0.90 } = 0.03375 / 0.1195 

                           = 0.28

    >> 확률이 가장 높은 독감으로 판단을 한다.


* 베이지 추론의 편중(bias)

 - 인간은 베이즈 규칙에 적용할 수 있는 확률 값을 도출 할 수 없다.

 - 조건부 확률 값이 전문가가 제시한 사전 확률과 무순될 수 도 있다. ( 여사건의 확률은 모순되는 경우가 많다 )

 - 이는 사건 자체가 독립이라는 가정이 필요하기 때문에 발생하기도 한다.

 - 일상생활에는 사건 자체가 독립적이여서 영향을 미치지 않는 것은 거의 존재하지 않으며, 위의 Toy Box와 같이

   결합확률을 구하는 것은 더더욱 힘들다.

 - 이러한 한계점을 극복하기 위해서 제공된 것이 확신도 이론이다.