Certainty Factor

 

CERTAINTY FACTOR in MYCIN

Mycin 의 지식 공학자들은 가설 H 와 측정가능한 증거 E 와 관련된 믿음의 정도를 표현하기 위해 certainty factor를 개발했다

CF(H,E) =  mB(H,E) - mD(H,E)

CF(H,E)  는 증거 E를 가지고 있을 때 가설 H 에대한 certainty factor

mB(H,E) 는                  "              "                        믿음의 정도

mD(H,E) 는                  "              "                        불신의 정도

Mycin에서 mB ,mD 는 전문의로부터 0 과 1 사이의 확률로 주어졌다

따라서 CF 는 1 과 -1 사이의 값을 가진다

위의 공식은 하나의 mD 에 의해 전체 CF 가 너무 큰 영향을 받아 rule 이 수행되기 위한

threshold를 넘지 못하는 부작용이 있다

CF(H,E) =  mB(H,E) - mD(H,E)/(1 - min[mB(H,E), mD(H,E)])

부작용을 감소시키기 위해 1977년에 위와 같이 변경되었다

이로써 mD 의 효과를 부분적으로 부드럽게 하였다

CF(H,E) =  CF(E) CF(H)  

IF E THEN H 의 경우를 위해 Mycin 의 공식은 다시 위와같이 바뀌었다

CF(E) 는 증거 E 의 certainty factor 이며

CF(H) 는 가설 H 의 certainty factor 이다

만일 증거가 확실하다면 (CF(E) = 1), CF(H,E) =  CF(H)  로 된다

rule 의 condition 과 action 은 둘다 certainty factor를 가진다

각각의 certainty factor 는 표시되기도하고 안되기도한다

안될 때는 1 이라고 가정한다

CF(H,e) =  CF(H,E) CF(E,e)  

불확실한 증거를 (CF(E) < 1) 갖고 있을 경우는 위와같다

CF(H,e) 는 불확실한 증거 e 에 근거한 가설 H 의 certainty factor

CF(H,E)  는 증거 E를 가지고 있을 때 가설 H 에대한 certainty factor

CF(E,e) 는 증거 e 의 certainty factor

만약 증거에 대하여 확신할수 없다면 , 확실한 증거에 기초를 둔 가설에 대해서도 확신이 감소할 것이다

다수의 증거들이 AND 연결된 경우 CF(E) 는 min 이다

IF E1 AND E2 AND E3 THEN H

min(CF(E1), CF(E2), CF(E3)) 로서 CF(E) 가 얻어진다

다수의 증거들이 OR 연결된 경우 CF(E) 는 max 이다

IF E1 OR E2 OR E3 THEN H

max(CF(E1), CF(E2), CF(E3)) 로서 CF(E) 가 얻어진다

NOT의 경우 certainty factor 는 certainty factor 의 음수이다 

CF 는 1 과 -1 사이의 값을 가진다

AND ,OR 가 같이 사용될 경우

IF (E1 AND E2) OR (E3 AND NOT E4) THEN H

max[min[(CF(E1), CF(E2)], min[ CF(E3)), -CF(E4)]] 로서 CF(E) 가 얻어진다

이상은  Mycin 에서의  certainty factor 의 계산법이다

모든  expert system에서  Mycin 의 계산법을  따르지는 않는다

또한  certainty factor 의  범위도  각각 다를수 있다

reference

    Expert Systems for Business,  D.V.Pigford/Greg Baur  정일주 역  , 시그마프레스 1996

 

 Certainty factor in VP-Expert

 VP-Expert 는 Mycin 과 비슷한 certainty factor를 사용한다

그러나 범위를 0 과 100 사이를 쓰며 음수를 불허하므로 연산자 NOT을 사용안한다

1 . CF(H,E) = CF(E) CF(H)

IF E THEN H 에 대해 위의 식을 사용하는 것은 Mycin 과 같다

condition에서 AND 가 사용되는 방법도 같다

  즉 IF E1 AND E2 AND E3 THEN H

  CF(E) = min(CF(E1), CF(E2), CF(E3))

2 . condition에서 OR 의 사용

IF E1 OR E2 THEN H

CF(E) = CF(E1) + CF(E2) -[ CF(E1) * CF(E2) ]

Mycin 에서는 OR 에 대해 max를 사용하는 것과 다르다

3 . condition에서 AND 와 OR 의 사용

IF E1 OR E2 AND E3 THEN H

위의 condition 은  E1 AND E3 OR E2 AND E3 로 해석된다

즉 min[CF(E1), CF(E3)] OR min[CF(E2), CF(E3)]

위의 식을 CF1 OR CF2 라고 표현하면

CF(E) = CF1 + CF2 - [ CF1 * CF2 ]