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 ]