CS/인공지능

[인공지능] 전문가시스템

IT록흐 2021. 10. 29. 10:09
반응형

 

지금껏 포스팅했던

'탐색'으로 구현한 인공지능은

절차적 코드를 사용한다.

 

그러나

지능은 '탐색'으로만 구현되지 않는다.

 

전문가 시스템은 코드가 아닌

규칙으로 표현된 지식을 이용하여

좀 더 복잡한 문제를 해결한다.

 

 

전문가 시스템

 

이미 습득한 지식을 이용하여 새로운 사실을 추론하는 방법이다.

 

 

생성규칙(Production Rules)

 

데이터 : 사실 ( True ) ( ex. 신호등, 빨간색 )

정보 : 의미 있는 사실 ( True ) ( ex. 신호등이 빨간색이다. )

지식 : 추론을 위한 정보 ( True or False )  ( ex. 신호등이 빨간색이면 멈추어야 한다. )

 

EX. ) 

자동차가 움직이지 않는다. AND 연료탱크가 비웠다.  ( 상황 )

THEN 자동차에 연료를 급유한다. ( 결론 )

( 상황이 주어지면 결론이 내려지는 시스템 )

 

 

추론엔진 

 

 

 

장기기억장치에는 추론에 필요한 규칙(지식)이 저장되어 있다. 단기기억장치에는 현재 정보가 들어있다. 정보와 규칙이 만나면 새로운 정보를 추론할 수 있다. 

 

 

 

사용자가 본인의 상태 정보를 사용자 인터페이스로 추론엔진에 전달하면 미리 전문가가 지식베이스에 저장해놓았던 규칙(지식)을 근거로 새로운 정보를 추론하여 사용자에게 전달한다.

 

 

추론 방법 

 

1) 순방향 추론 : 사실로부터 결론을 추론

 

 

 

2) 역방향 추론 : 목표를 설정하고 증명하는 추론

 

 

 

목표 Z를 얻기 위한 규칙을 찾는다. ( Y & C & D → Z )

 

단기 기억 장치에 C,D 정보는 있으나 Y 정보가 없으므로 Y 정보를 얻기 위한 규칙을 찾는다. ( X & B → Y )

 

단기 기억 장치에 B 정보는 있으나 X 정보가 없으므로 X 정보를 얻기 위한 규칙을 찾는다. ( A  → X )

 

A 정보로 X 정보를 추론한다. 

 

X 정보와 B정보로 Y정보를 추론한다.

 

Y 정보와 C 정보 그리고 D 정보로 Z 정보를 추론한다.

 

 

충돌해법

 

동일한 사실(정보)에 대한 규칙이 여러 개라면 어떤 규칙을 점화시켜야 할까?

 

1) 우선순위 기법

2) 특수한 규칙 우선 점화

3) 가장 최근에 사용한 데이터를 기준으로 규칙 점화

 

 


 

전문가 시스템은 IF-THEN 구조를 이용하여 지식을 자연스럽게 표현했다. 지식베이스와 추론 엔진이 분리되어 있어 다른 영역에도 독립적으로 사용이 가능하다. 

 

그러나 규칙이 많아지면 유지보수가 어려워진다. 탐색이 비효율적이고 스스로 학습이 불가능하여 인간이 지식을 넣어주어야 한다. 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형