인공지능 (artificial intelligence)

55
인인인인 (Artificial Intelligence) Knowledge Representation 최 최 최

Upload: kiara-miranda

Post on 04-Jan-2016

194 views

Category:

Documents


2 download

DESCRIPTION

Knowledge Representation 최 윤 정. 인공지능 (Artificial Intelligence). contents. 논리를 이용한 지식표현 명제논리 / 술어논리 논리로 표현된 지식의 이용 규칙을 이용한 지식표현 규칙기반 시스템 / 추론 규칙기반 시스템의 특징 시맨틱 네트를 이용한 지식표현 시맨틱 네트의 기본개념 특성상속에 의한 추론 다중관계의 표현 프레임을 이용한 지식표현 프레임 프로시저. 지식이란 무엇인가 ? 데이터, 정보, 지식 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 인공지능 (Artificial Intelligence)

인공지능(Artificial Intelligence)

Knowledge Representation

최 윤 정

Page 2: 인공지능 (Artificial Intelligence)

2

contents

지식이란 무엇인가 ?

데이터 , 정보 , 지식

지식이란 정보를 개념화한 것

지식의 표현과 그 구조

지식의 표현과 추론

지식의 분류

지식표현의 조건

지식표현의 유형

논리를 이용한 지식표현 명제논리 / 술어논리

논리로 표현된 지식의 이용

규칙을 이용한 지식표현 규칙기반 시스템 / 추론

규칙기반 시스템의 특징

시맨틱 네트를 이용한 지식표현 시맨틱 네트의 기본개념

특성상속에 의한 추론

다중관계의 표현

프레임을 이용한 지식표현 프레임

프로시저

Page 3: 인공지능 (Artificial Intelligence)

3

What is ‘Knowledge’ 데이터 , 정보 , 지식의 차이

지식영역(Knowledge)

정보영역(Information)

진리정리ㅡ법칙

지식

정보

데이터 ( 잡음 포함 , 불필요 데이터 등 )

감각기관 ( 눈 , 귀 )

외부 세계

보편화 ( 이론화 )

개념화 ( 체계화 )

정리

인지 또는 인식

Page 4: 인공지능 (Artificial Intelligence)

4

지식이란 정보를 개념화한 것 !

인간에게 의미있는 지식을 창출하기 위한 방법은 ?

예 ) 열차역에서의 발차시간

- 역에서의 발차시간 그 자체는 전혀 의미없는 데이터 .

- 역과 역이 연결되고 역의 순서대로 발착시간이 되면 정보가 된다 .

- 정보가 지식이 되기 위해서는 검색할 수 있는 열차시간표와 같이 유익한 것이 되어야 한다 .

즉 , 정보가 지식이 되려면 적절한 구조가 있어야 하는데 이것이 지식베이스 (Knowledge Base)

이다 .

따라서 데이터와 정보를 정리하고 체계화하여 지식베이스를 만드는 것도 바로 이런 목적

때문이다 .

구조화된 정보의 체계가 인간에게 이해될 경우 이것을 개념이라 한다 .

유익한 지식이란 ? --- 개념화된 형태의 정보이겠죠 ..

Page 5: 인공지능 (Artificial Intelligence)

5

지식기반 시스템 vs. 지식기반사회

지식베이스 : 특정한 분야의 지식에 쉽게 접근할 수 있도록 체계적으로 축적한 데이터

지식기반시스템 : 방대한 양으로 축적된 지식베이스를 이용하여 추론엔진을 통해

문제를 해결하거나 판단작업이 가능한 자동화된 시스템

사용자 UI

지식베이스(knowledge base)

추론엔진

데이터처리

정보처리

지식처리

융합 지식처리

Page 6: 인공지능 (Artificial Intelligence)

Knowledge Representation and Reasoning(1)

지식과 문제의 해를 얻기 위해 지식을 처리하는 메커니즘 !

지식은 컴퓨터에서 처리되기 위해 심볼의 형태로 묘사된다 .

표현된 지식은 추론과정을 통하여 새로운 내부 표현 형태로 변환 .

사실과 내부표현 사이의 매핑

6

사실 내부 지식 표현정방향 매핑

역방향 매핑

추론

Page 7: 인공지능 (Artificial Intelligence)

7

Classification of Knowledge-type

지식의 형태 특성 예

대상과 속성 Object 는 Attribute 에 의해 특성화 됨 .객체 .

새는 날개가 있다 .

대상간의 관계 2 개 이상의 object 사이에 성립된 관계 (relation) 를 기술교수와 학생 : 가르친다 .

철수와 영희 : 친구사이

사상 , 행위 , 상태사건 (event) 자체뿐 아니라 일련의 사건에 관한 시간과

인과관계도 기술어제는 하늘에서 천둥이 쳤다 .

높은 산에서는 기압이 낮기 때문에 ---

인과 관계 사상이나 상태가 내부의 인과관계에 의해 변하는 과정을 기술

절차 어떤 목적을 수행하기 위한 일련의 행위 . Process자전거를 잘 타려면 , 먼저 앉아서 균형을 잡은 후 , 천천히 페달을 밟는다 .

메타지식지식을 위한 지식 .

어떠한 ‘지식’을 나타내기 위한 부가 정보 .

이 지식은 어떤 상황에서 사용해야하는가 ?

어떻게 획득했는가 ? 특장점은 ?

파일사이즈 , 기록시간 등

Page 8: 인공지능 (Artificial Intelligence)

8

Knowledge Representation and Reasoning(2)

매핑과 추론

초기사실 추론된사실

철수는 사람이다 철수는 생각한다

Man( 철수 ) Think( 철수 )

개념적 추론

추론 프로그램

정방향 매핑 역방향 매핑

Page 9: 인공지능 (Artificial Intelligence)

9

지식의 분류

지식분류

문제에 대한 지식 : 문제영역의 지식

대상세계에서 성립하는 규칙과 경험법칙 : 효율적인 탐색을 위한

경험법칙

메타지식 (meta knowledge): 지식에 관한 지식 , 추론 방식을 위한

지식

Page 10: 인공지능 (Artificial Intelligence)

10

지식 표현 및 유형 지식표현의 조건

표현방법의 적합성 : 사실적 또는 경험적 지식을 쉽고 충분히 표현해야 한다 .

추론의 적합성 : 문제에서 요구하는 형태에 부합하도록 추론 메커니즘을 효율적으로

동작시키고 결론을 유도할 수 있어야 한다 .

추론의 효율성 : 지식베이스에 접근하여 새로운 지식을 추론해 낼 수 있게 하는 추론

메커니즘을표현할 수 있어야 한다 .

지식획득 능력 : 새로운 지식을 쉽게 획득할 수 있으며 , 지식베이스를 일관성 있게 유지하며

확장할 수 있어야 한다 .

지식표현의 유형

절차적 지식 (procedural knowledge) : LISP

선언적 지식 (declarative knowledge) : 단편적이고 독립적인 지식들로 구성 , 추론 시 이용

Page 11: 인공지능 (Artificial Intelligence)

11

Knowledge Representation : Logic

Page 12: 인공지능 (Artificial Intelligence)

12

논리를 이용한 지식표현 명제논리

명제 (proposition): 참 또는 거짓을 판단할 수 있는 문장

논리연산자 : 명제들 연결 , AND, OR, NOT, 조건명제 , 동치 등

복합명제 : 각 명제를 하나의 심볼로 표현하고 , 이 심볼들을 논리 연산자로 연결한 것

이것이 유리이다 =GLASS

깨진다 = Fragile

유리라면 잘 깨어진다 =GLASS FRAGILE

Page 13: 인공지능 (Artificial Intelligence)

13

논리를 이용한 지식표현 Modus Ponens : 위의 예에서 GLASS 가 입력되면 FRAGILE 이 도출되는 과정

술어논리 (Predicate Calculus)

Predicate Logic, Predicate Calculus, First-order predicate Calculus

등은 모두 같은 의미 !

술어와 객체로 표현 ( 객체에 변수사용 가능 )

술어명제 : “ 고양이는 포유동물이다”

변수 x 사용 예 : Man(x)

정형식 (well-formed formulas) :

술어 , 상수 , 변수 , 한정자 , 논리연산자를 문법적으로 허용된 방법으로 만들어진 문장

supplement ( slide 42)

mammal(CAT) :

객체 : “ 고양이 (CAT)”

술어 : “ 포유동물

(mammal)”

Page 14: 인공지능 (Artificial Intelligence)

14

Knowledge Representation : Production System

Page 15: 인공지능 (Artificial Intelligence)

15

Production System 을 이용한 지식표현

프로덕션 시스템 인간의 지식에는 조건문 형태로 가정과 결론을 나타내는 경우가 많다 .

규칙은 조건 (IF) -> 결론 (THEN) 문장으로 표현된다 .

조건과 결론 사이의 규칙은 “”기호로 나타낸다 . 따라서 A B 가 된다 . 이때 A 는 조건부 , B 는 결론부

예 ) 프로덕션 시스템의 사이클의 예 : aistudy 에서 찾아보세요 .

규칙을 이용하여 표현된 지식 베이스 : 지식기반 시스템 지식 base : 사실과 데이터 , 이에 적용할 규칙들로 구성

추론기관 : 현재 상태에 의해 만족되는 규칙을 선택하여 실행한다 .

패턴매칭되는 사실들을 생성하여 최종적으로 새로운 사실을 생성해낸다 .

주어진 상황을 위한 권고 , 지시 , 전략을 나타내는 정형화 된 표현방법으로

인공지능에서 매우 많이 사용된다 .

Page 16: 인공지능 (Artificial Intelligence)

16

Production System 에서의 규칙의 수행과정의 예

사실 규칙

영수와 철수는 형제다민석은 소영의 남편이다 .소영은 영수의 어머니이다 .

정합 (matching)

새로운 사실추가

If X 와 Y 가 형제 AND Z 는 X 의 어머니Then Z 는 Y 의 어머니

If X 가 Y 의 남편 AND Y 가 Z 의 어머니Then X 는 Z 의 아버지

영수와 철수는 형제다민석은 소영의 남편이다 .소영은 영수의 어머니이다 .소영은 철수의 어머니이다 .민석은 영수의 아버지이다 .민석은 철수의 아버지이다 .

Page 17: 인공지능 (Artificial Intelligence)

17

Production System 을 이용한 지식표현

규칙을 이용한 추론

전방향 추론 (forward chaining)

후방향 추론 (backward chaining)

추론사실 (inference chain)

규칙기반 시스템의 특징

개개의 규칙은 독립적으로 추가 , 삭제 , 변경될 수 있다 .

규칙기반 시스템은 지식이 균일한 방법으로 표현되며 , 이해하기 쉽다 .

대형 시스템에서 문제풀이 과정의 제어흐름은 분명하지 않다 .

융통성이 적고 구조화되어 있지 않다 .

Page 18: 인공지능 (Artificial Intelligence)

18

규칙의 수행과정의 예 사실 규칙

(1) 가연성 액체가 엎질러졌다 .(2)엎질러진 액체의 PH 가 6 이하이다 .(3)엎질러진 물질이 식초냄새가 난다 .

(4)엎질러진 물은 산성이다 .

정합 (matching)

새로운 사실추가

엎질러진 액체의 PH 가 6 이하이면 이 물질은 산성이다 .

엎질러진 액체의 PH 가 6 이하이다 .

엎질러진 물질이 산이다 .

엎질러진 물질이 식초냄새가 난다 .

엎질러진 물질이 초산이다 .

(2)번 규칙

(3)번 규칙

( 범인을 잡는 추리과정을 생각하세요 .) supplement ( slide 50~55)

Page 19: 인공지능 (Artificial Intelligence)

19

Knowledge Representation : Semantic Network

Page 20: 인공지능 (Artificial Intelligence)

의미망 (Sementic Network) 에 의한 지식표현

의미망 (semantic net) 의 기본개념 및 규칙

지식 사이의 관계 ( 순서 ) 를 나타낼 수 있기 때문에 규칙기반 시스템의 단점을 보완할 수 있다 .

노트 (node) 는 객체 (objects), 개념 (concepts), 사건 (events) 들을 표현하고 ,

아크 (arc) 는 노드사이의 관계 (predicates 또는 속성 ) 를 표현한다 .

아크는 isa(is a), ako(a kind of), has-part 등이 있다 .

isa 는 하나의 사례 (instance) 를 나타낸다 .

ako 는 어떤 부류를 나타내는 개념의 한 종류이다 .

has-part 는 한 객체를 구성하는 구성품을 나타내는 관계이다 .

( 예 ): isa(파랑이 , 앵무새 )

20

파랑이 앵무새 새

부리

하위노드 상위노드 isa a kind of

has-part

지식 , 인간의 기억 , 실세계를 망 구조로 표현

노드에는 객체 , 개념 , 사건 등을 표현

링크는 노드들간의 관계를 묘사

구체 , 절차 , 인과 , 부분 등의 객체 관계 표현

isa 는 성질 계승 (property inheritance)

링크

장점 : 매우 복잡한 개념이나 인과 관계 표현에 용이

단점 : 지식량이 커지면 복잡해짐 → 조작이 어려움

Page 21: 인공지능 (Artificial Intelligence)

의미망의 예Canary is a Bird.A Bird has Wings.Banney is a Canary.Banney owns a Nest.Wings is a Organ.

Canary

Bird

Baney

Wings Organ

Nest-1 Nest

isa

isa

owns isa

has isa

21

Page 22: 인공지능 (Artificial Intelligence)

22

특성상속 알고리즘 어떠한 객체 (O) 의 특정한 속성 (A) 값을 구하기 위해서는

1. 지식 베이스에서 O 를 찾는다 .

2. O 에 속성 A 에 대한 값이 직접 연결되어 있으면 그 값을 취하고 끝낸다 .

3. 그렇지 않으면 isa 라는 속성이 있는가 찾는다 . 없다면 실패로 끝난다 .

4. isa 속성으로 연결된 객체로 이동한다 . 그 객체에 속성 A 가 존재하면 그 값을 취하고 끝낸다 .

5. 그렇지 않으면 a kind of 아크가 존재하지 않거나 , 속성 A 의 값이 결정될 때까지 다음을

반복한다 .

5.1 a kind of 속성을 따라 상위 객체로 이동한다 .

5.2 그 노드에 속성 A 가 존재하는가 본다 . 그렇다면 그 값을 취하고 끝낸다 .

6. 속성 A 값의 검색은 실패로 끝난다 .

Page 23: 인공지능 (Artificial Intelligence)

23

의미망 (Sementic Network) 에 의한 지식표현

(예 ) 진수는 정아에게 편지를 보냈다 .

의미망으로 표현된 지식의 사용 : 지식탐색 방법

활성영역전개(spreading activation): 노드들 사이의 연결을 탐색하여 활성화

정합(matching): 탐색하려는 객체 또는 질의를 표현하는 네트워크 조각 구성 .

진수

정아

보냄 편지

편지 -2동작 -1행동 객체

대상

isa isa

Page 24: 인공지능 (Artificial Intelligence)

24

Knowledge Representation : Frame

Page 25: 인공지능 (Artificial Intelligence)

25

FRAME 을 이용한 지식표현 프레임 (frame)

1974년 Minsky 가 인간의 기억과 인지과정을 모델화하기 위해 제안한 표현형식

전형적인 상황이나 행동의 기술 , 객체 사이의 계층적 관계의 기술에 적합한 구조적

지식표현형식의 대표모델 : 오늘날 유행하는 객체지향 개념이 프레임에서 유래되었다 . (slide 55)

의미망의 한 종류로서 객체와 그 속성의 구조적 기술

프레임 객체 구조 내에 슬롯이라는 속성 묘사에 중점

데이터와 프로시저를 하나의 구조로 묶는다 .

프레임들은 계층적으로 구성

프레임 표현 : < 프레임 이름 >-<슬롯 이름 >-< 패싯 이름 >-<값 >

한 프레임은 객체들의 집합이나 클래스를 표현하기도 하며 , 그에 소속된 개개의 객체 또는 인스턴스를 표현한다 .

Page 26: 인공지능 (Artificial Intelligence)

26

FRAME 을 이용한 지식표현 지식을 서로 관계 있는 것끼리 분류하고 상하관계에 따라 구성한다 .

슬롯 (Slot) : 프레임을 표현하는 하나의 속성 (attribute).!

슬롯 (slot) 은 객체의 속성과 속성값을 채우는 칸 : 슬롯에 저장된 값의 집합으로 나타낸다 .

디폴트값 , 프레임 포인터 , 규칙 , 프로시저

프로시저는 슬롯 값 요구 , 변경 , 제거될 때 자동으로 작동되는 일종의 demon

패싯 (facet) : 슬롯 값을 다양하게 줄 수 있는 키 : Value, Default, Range, If-added, If-

needed 등

Page 27: 인공지능 (Artificial Intelligence)

27

FRAME 을 이용한 지식표현 프레임의 특성상속 (property inheritance)

부모 클래스로부터 슬롯과 값을 이어받는 것

또한 자신은 부모클래스로 부터 상속받는 것 이외에 자기자신의 고유한 슬롯을 가질 수 있다 .

프로시저 (procedure)

슬롯에는 그 슬롯의 사용과 관련된 프로시저가 연결될 수 있다 .

객체지향 언어에서 슬롯은 멤버에 해당되고 , 프로시저는 멤버함수에 해당된다 .

종류 :

IF(when)-needed 프로시저

IF(when)-read 프로시저

IF(when)-written 프로시저

IF(when)-removed 프로시저

Page 28: 인공지능 (Artificial Intelligence)

앞의 Canary 에 대한 Frame 의 예

(FRAME Canary

(Is-a (Value Bird))

(Color (Value Yellow))

(Can (Default Sing))

(Breed (Range Africa India))

(Length (If-added Calculate-width)

(If-removed Erase-width-weight))

(Width (if-added Calculate-weight))

(Weight (If-needed Calculate-weight)))

장점 : 지식 표현이 일반적이고 자연스러우며 강력한 방법

단점 : 복잡성 때문에 지식작성이 어렵다 .

28

Page 29: 인공지능 (Artificial Intelligence)

29

FRAME 으로 표현된 지식의 예 (ako ; a Kind of)

FRAME 인간 FRAME 성인남자 FRAME 철수

ako 포유류

* 이동 직립보행

* 지능 default=100)

* 자식프레임에 상속되는 슬롯

ako 인간

* 연령

* 키 (default =170)

* 체중 (default =65)

* 결혼관계

*배우자

instance 성인남자

연령 25

키 170

체중 65

결혼관계 기혼

배우자 영희

Page 30: 인공지능 (Artificial Intelligence)

30

프로시져의 동작 예FRAME 성인남자

ako 인간

* 연령 * 키 (default =170)

* 체중 (default =65)

(IF-needed :

IF 연령 >35 THEN

체중 <- ( 키 – 100)

ELSE

체중 <- ( 키 – 110) : )

* 결혼관계 (IF-written :

IF 결혼관계 = 기혼 THEN

배우자이름을 질문하여 슬롯 배우자에 넣는다 .

해당되는 배우자 프레임에서 배우자 슬롯에 이 프레임의 이름을 넣으라는 메시지를 보낸다 . )

* 배우자

When-written 프로시저 동작

When-needed 프로시저 동작

Page 31: 인공지능 (Artificial Intelligence)

31

지식표현 방법의 장단점 비교

지식표현방법 장점 단점

논리 (Logic)인간의 사고과정과 유사하며 추론과정의 완전성이 보장된다

제어 지식의 표현이 불가능하다 .

프레임 (Frame)지식의 모듈화 및 표현이 용이하며 변경 , 추가 , 삭제가 가능하다 .

지식의 제어가 곤란하며 , 지식의 전체 구조 파악이 어렵다 .

프로덕션시스템(Production System)

지식표현 방법이 자연스럽고 지식표현이 경제적이며 연상추적이 용이하다 .

지식의 수정이 곤란하며 , 논리적인 결합이나 인과관계의 표현이 곤란하다 .

의미망 (Semantic Network)

구조적 지식과 통합적 지식의 표현에 용이하며 지식표현이 경제적이다 .

지식의 수정이 곤란하며 , 추론 방법개발의 부담이 있다 .

Page 32: 인공지능 (Artificial Intelligence)

32

연습 ( 문 1) 다음의 지식을 의미망으로 표현해 보세요 .

그렌져는 승용차이다 .

승용차는 자동차이다 .

승용차는 4 개의 바퀴가 있다 .

( 문 2) 다음의 블럭세계를 의미망으로 표현한다면 ?

이때 , 사용할 연결선은 top-of, next-to, isa 등이고 , 노드는 A,B,C,D,Box 이다 .

A B

C

D

Page 33: 인공지능 (Artificial Intelligence)

33

has-part

(ans 1)

(ans 2)

그렌져 승용차 자동차 4 개바퀴가 있다isa ako

top-of top-of next-to

Box

isa

D C B A

Page 34: 인공지능 (Artificial Intelligence)

34

복합적 지식표현 문제의 특성에 따라 하나의 표현방법만으로는 표현하기 어려운 경우

복합적 지식표현을 이용해서 지식 구축한다 .

규칙기반 지식 베이스는

규칙의 수가 많아지면 지식을 분류 , 검색하기가 어렵다 .

프레임을 이용하여 규칙들을 분류해 둘 수 있다 .

‘구체화’ 시키고 ‘관련성'을 부여한다 .

Page 35: 인공지능 (Artificial Intelligence)

지식관리 지식과 지식관리 : 오랫동안 다양한 개념을 가져왔다 .

오늘날의 패러다임 : 기업경영을 지식이라는 관점에서 새롭게 조명하는 접근방식 지식 : 사람들의 기술 , 능력 , 아이디어 , 태도 , 책임 , 동기 등과 연결된 정보와 데이터의 통합적

활용으로 공유되어야 한다 .

지식 관리 : 유일한 출처 , 중요한 기능들 , 사용하기 위한 지식 흐름을 방해하는 지속적인 병목현상을

시각화하는 지적 자산의 감사활동

지식공유시스템의 정의

예측 할 수 없을 정도로 급변하는 경영환경 속에서 기업의 생존과 경쟁력을 갖추는 경영으로 ,

정보기술로서 데이터 · 정보의 가공능력과 인간의 창조적 혁신적인 능력을 통합해 가치창조의

극대화를 추구하는 기업의 조직적 프로세스 (피츠버그 대학의 요시게 말호트라 교수 )

35

Page 36: 인공지능 (Artificial Intelligence)

36

지식관리 : 지적자산관리의 배경

데이터를 저장하는 일 vs. 결정을 내리는 일

정보시스템의 역할 : 기업활용으로 발생하는 데이터를 저장 , 관리하는 것

의사결정시스템의 역할 : 실제 판단을 내리고 의사결정을 수행하는 일

의사결정의 주체는 인적자원이 떠나면 지식자원도 소실된다는 관점에서 출발했다 . 그러나 , 인적자원이 보유한 정보는 비정형데이터 ..! Not DB.! 대량의 문서들 .!

따라서 , 인적자원이 보유한 지적 자산 즉 , 비정형 문서자료들을 축적하고 , 활용할 수 있도록 하는

것이 목적이 된다 .

90년대 후반에는 풍부한 정보기술과 다양한 관점에서의 분석방법 , 학습을 활용한 의사결정지원

시스템이 등장한다 . : 데이터 마이닝 , OLAB 텍스트마이닝 빅데이터 마이닝

기계 !

인간 !

“ 담당자가 안계십니다…”“담당자가 퇴사했습니다 .”…

Page 37: 인공지능 (Artificial Intelligence)

37

지식관리시스템 지식관리시스템 (Knowledge Management System, KMS)

조직내의 인적 자원들이 축적하고 있는 개별적인 지식을 체계화하여 공유함으로써

기업경쟁력을 향상시키기 위한 기업정보 시스템

예 ) 삼성 SDS의 KWave 시스템

지식표현모델 : 지식맵과 지식컨테이너

관리프로세스 :

지식의 정의

지식의 축적

지식의 활용 및 재정의

(http://www.sds.samsung.co.kr/product/kwave/info/product_3.php)

Page 38: 인공지능 (Artificial Intelligence)

38

지식 표현 지식관리 지식 경영 지식경영 : 현재는 기업경영의 도구로서의 역할

기업내에 존재하는 지식을 종합적으로 관리하여 기업의 경쟁력을 높이기 위한 행위

가트너 그룹에 의한 정의

정보자산을 확인 , 포착 , 출력 , 공유 , 평가하는 통합된 접근행위를 촉진시키는 일 .

정보자산이란 데이터베이스 , 문서 , 정책 , 절차 뿐 아니라 인적자원의 경험도 포함한다 .

지식경영 시스템 :

새로운 경제의 요소 : 지식자산 , 무형의 스킬 , 지식과 정보 !

데이터 , 정보 , 지식을 분명히 구분해 사용하고 있다 .

데이터 : 어떤 상황에 대한 불연속적이고 객관적인 사실의 표현 .

의미나 가치가 없는 구조적인 기록 , 처리결과들 . 정보의 기초자료

정보 : 어떤 상황에 의미가치를 부여할 수 있는 인간의 지적 흐름 .

필요시기를 놓치면 가치는 상실되며 , 지식으로 승화되며 새로운 가치를 갖게 된다 .

지식 : 의미있게 구성되어 축적된 정보형태 . 지식은 정보로 부터 세분화되거나 체계화 된다 .

노하우는 정보와 지식의 중간형태 . !

Page 39: 인공지능 (Artificial Intelligence)

39

지식경영시스템의 구축 구축목적과 상황에 따라 구현된다 .

실시간 지식공유시스템

고객지식관리시스템

지식자료 시스템

모범사례 공유시스템

전문가시스템

과거 대형 DB 업체들의 기사를 검색해보세요 키워드 : IBM, 오라클 , 지식

Page 40: 인공지능 (Artificial Intelligence)

40

Knowledge Representation 팀프 #1

Knowledge Base : 위 방법 중 하나를 선택하여 구축할 것

Frame 으로 구축할 때 : Lisp + KM

추론엔진 : Knowledge Machine (Lisp-based)

Ontology 를 사용할 때 : Protégé

Knowledge Engine : forward / backward 추론이 가능한 구조로 만들 것 .

1 차 : Knowledge Base 구축부터 : 문장 , 그림 , UML 등 표현 형식 자유 .

2 차 : 형식언어로의 표현은 그 다음 진행할 것 .

이전 프로젝트 참고하세요

Page 41: 인공지능 (Artificial Intelligence)

41

Supplemenent

Page 42: 인공지능 (Artificial Intelligence)

논리 (Logic) 수학 , 논리학에서 사용된 명제논리나 서술논리 사용

“If x is a bird, then x has wings” 란 사실 ( 규칙 ) 의 표현

(x) {Is-a(x, Bird) has(x, Wings)}

정형공식 (wff: well-formed formular) 이해

장점 수학적인 근거를 바탕으로 논리개념을 자연스럽게 표현

지식의 정형화 영역에 적합 ( 정리 증명 : theorem proving)

지식의 첨가와 삭제가 용이하고 단순

단점 절차적 , 결정적 지식표현이 어렵다 .

사실의 구성법칙이 부족하므로 실세계의 복잡한 구조를 표현하기 어렵다 .

42

Page 43: 인공지능 (Artificial Intelligence)

항 (Term) 과 기초공식 (Atomic Formula)

항 :

1) 상수 , 변수는 항

2) 함수 f 가 항 x 를 인자로 가지면 f(x) 는 항

3) 1), 2) 에 의해 구성되는 것은 모두 항

기초공식 :

항을 인자로 가지는 서술어 (predicate) 는 모두 기초공식이다 .

Ex) Woman(MARY), Married(father(JOHN), mother(JOHN))

정형공식 (Wff : well formed formular)

1) 기초공식 F 는 wff

2) F, G 가 wff 면 , (F∨G), (F∧G), ∼F, (F→G), (F↔G) 도 wff

3) F 가 wff 면 , (∀x)F, (∃x)F 도 wff

4) 1), 2), 3) 의 과정에 의해서만 구성되는 것은 모두 wff

43

Page 44: 인공지능 (Artificial Intelligence)

Resolution Refutation 비교흡수 부정 (Resolution Refutation)

두개의 기초절 ( 부모절 (parent clause) 이라 함 ) 에서

P1 ∨P2 ∨ … ∨PN 과 ~P1 ∨Q2 ∨ … ∨ QM

이 두개의 부모절 (parent clause) 을 논리합을 취해서 새로운 비교흡수절

(resolvent) 을 생성 (비교흡수 )

(P1∨ ~P1)∨(P2 ∨ … ∨PN ∨Q2 ∨ … ∨ QM)

비교흡수 부정 방법 비교흡수 부정에서의 모든 절은 논리합으로만 된 정형공식

정형공식 집합 S 에 특정 정형공식 X 가 논리적으로 따름 (logically follow) 을 증명하기 위한 것

P=S∪{~X} P 에 대해 비교흡수 수행 비교흡수절 Ri 생성 P∪Ri 에 대해 비교흡수 반복 모순

(NIL) 이 생성되면 종결

44

Page 45: 인공지능 (Artificial Intelligence)

Resolution Refutation가정 : S 에 X 가 논리적으로 따른다고 가정

S 를 만족하는 모든 해석은 X 를 만족 (satisfy)함

S 를 만족하는 모든 해석은 S∪{X} 를 만족함 (satisfiable)

S 를 만족하는 모든 해석은 ~X 를 만족하지 않음

S 를 만족하는 모든 해석은 S∪{~X} 를 불만족 (unsatisfiable)

즉 , 불만족인 집합내에는 어떤 절 Ci 에 대해 , Ci 와 ~Ci 가 공존하는 상황

( 모순 ) 으로 볼 수 있다 . 어떤 해석이 주어져도 Ci 와 ~Ci 를 동시에 만족할 수 없다

이러한 절들에 대한 비교흡수는 결국 NIL( 모순 ) 생성

이는 S 에 논리적으로 따르는 X 를 부정 (~X) 한 결과는 모순을 초래하므로 결국 X 는 S 를 논리적으로

따른다

45

Page 46: 인공지능 (Artificial Intelligence)

비교흡수를 위한 정형공식의 절 변환

1) Implication() 제거 Ex) A→B ≡ ~A∨B

2) Negation(~) 영역 축소 Ex) ~(A∨B) ≡ ~A∧~B

3) 각 한정기호에 고유한 변수를 가지도록 변수 표준화

Ex) (∀x)[P(x) →(∃x)Q(x)] ≡ (∀x)[P(x) →(∃y)Q(y)]

4) 존재한정기호 (∃) 제거

(∀y)[(∃x)P(x, y)] : x 는 y 에 종속되어 결정

x 를 y 에 대한 어떤 함수로 표현 : g(y) : Skolem 함수

(∀y)[P(g(y), y)] 로 변환

5) Prenix 형으로 변환 : 모든 전체한전기호 (∀) 를 정형공식 앞으로 내어 영역을 전체공식에 미치도록 함

6) 정형공식을 논리곱 정규형으로 변환

Ex) X1 v (X2 ^ X3) ≡ (X1 v X2) ^ (X1 v X3)

7) 전체한정기호를 모두 생략 .

8) 논리곱을 생략 . Ex) X1 ^ X2 ≡ {X1, X2}

9) 각 절에서 같은 변수명이 없도록 조정

46

Page 47: 인공지능 (Artificial Intelligence)

47))]}((~)([~))],(,()([~))],,(()(~)({[~)9

))]}((~)([~))],(,()([~))],,(()(~)({[~)8

))]((~)([~))](,()([~))],(()(~)([~)7

))]}((~)([~

))](,()([~))],(()(~)(){[~)(()6

))]}}((~))(,([))],(()({[~)(){~)(()5

))]}}((~))(,([))],(()()[~{()(){~()4

)]}}(~),()[())],(()()[~{()(){~()3

)]}}(~),()[())],(()()[~{()(){~()2

)]}}(),()[~(~))],(()()[~{()(){~()1

)]}}(),()[(~))],(()()[{()(){(

3322211 xgPxPxgxQxPyxfPyPxP

xgPxPxgxQxPyxfPyPxP

xgPxPxgxQxPyxfPyPxP

xgPxP

xgxQxPyxfPyPxPyx

xgPxgxQyxfPyPxPyx

xgPxgxQyxfPyPyxPx

wPwxQwyxfPyPyxPx

yPyxQyyxfPyPyxPx

yPyxQyyxfPyPyxPx

yPyxQyyxfPyPyxPx

A→B ≡

~A∨B

Page 48: 인공지능 (Artificial Intelligence)

Resolution 실세계 문제

알고 있는 사실 읽을 수 있으면 글을 안다 .→ (∀x)[R(x)⇒L(x)]

돌고래는 글을 모른다 .→ (∀x)[D(x)⇒~L(x)]

어떤 돌고래는 지능이 있다 .→ (∃x)[D(x) ∧I(x)]

증명해야 할 사실 지능이 있는 어떤 동물은 읽을 수 없다 . → (∃x)[ I(x) ∧~R(x)]

정형공식의 절 변환 ~R(x) ∨L(x), ~D(y) ∨~L(y)

(∃x)[D(x) ∧I(x)] → x 가 종속되는 변수가 없다 . → Skolem 함수는 없음 →

Skolem 상수화 → x 를 임의의 상수 A 로 대치 ( A/x) → D(A) ∧I(A) → D(A), I(A)

48

R(x) : x 는 읽을 수 있다

L(x): 글을 안다

D(x) : x 는 돌고래이다 .

I(x) : 지능이 있디 .

Page 49: 인공지능 (Artificial Intelligence)

Resolution 목표공식의 부정에서 목표절 생성

(∃x)[I(x)∧~R(x)] → 부정 → ~(∃x)[I(x)∧~R(x)] → (∀x)[~I(x)∨R(x)] → ~I(x)∨R(x) → ~I(z)∨R(z)

비교흡수 부정의 적용

~I(z) R(z)∨ I(A) ~R(x) ∨L(x) ~D(y) ~∨ L(y) D(A)

R(A)

L(A)

~D(A)

NIL

S~X

{A/z}

{A/x}

{A/y}

49

Page 50: 인공지능 (Artificial Intelligence)

규칙 규칙 (Rule)

가정 (if-part, LHS) 과 결론 (then-part, RHS) 의 문장으로 표현

Ex) If (A and B) then (C) (A, B) → (C)

결정이나 결론이 요구되는 영역에 유용

규칙기반 시스템에서 사실집합과 규칙집합으로 구분되어 규칙의 가정부분이

사실집합의 일부와 부합될 때 규칙의 결론부분이 실행된다 .

장점 모듈화 . 독립적으로 추가 , 삭제 변경 용이

특정 표현 방법에 따라 구조를 달리할 수 있다 .

결정 , 결론이 요구되는 영역에 적합

단점 문제풀이에 많은 경비 소요 , 제어가 복잡

50

Page 51: 인공지능 (Artificial Intelligence)

지식표현 : 규칙에 의한 추론

A

G

사실 베이스

CH

B

F & B ZC & D F

A D

규칙 베이스

match

F & B ZC & D F

A D

규칙 베이스

match

A

G

사실 베이스

CH

B

D

F & B ZC & D F

A D

규칙 베이스

match실행

실행

A

G

사실 베이스

CH

B

D F

Z 로 결론내림

실행

51

Page 52: 인공지능 (Artificial Intelligence)

지식표현 규칙 표현의 8-퍼즐에의 적용 예

사실 퍼즐의 현재 상태 빈타일의 이동으로 상태 변화

규칙 퍼즐에서의 빈타일의 이동

R1: (빈타일의 위쪽이 이동 가능 ) 빈타일 위로 이동R2: (빈타일의 오른쪽이 이동 가능 ) 빈타일 오른쪽으로 이동R3: (빈타일의 아래쪽이 이동 가능 ) 빈타일 아래쪽으로 이동R4: (빈타일의 왼쪽이 이동 가능 ) 빈타일 왼쪽으로 이동

2 31 8 47 6 5

2 31 8 47 6 5

R2 적용

52

Page 53: 인공지능 (Artificial Intelligence)

지식표현 규칙 표현의 8-퍼즐에의 적용 예

문제점 현재 상태에서 적용 가능한 규칙 여러개 존재

어떤 규칙을 먼저 실행할지 결정해야 함 스케쥴링 문제

2 31 8 47 6 5

2 31 8 47 6 5

2 31 8 47 6 5

2 8 31 47 6 5

4 5 6

R2R3

R4

현재 상태에서 적용 가능한 R2, R3, R4 중에서 하나의 규칙을 선택하기 위해 앞에서 논의한 휴리스틱 기법을 이용한 스케쥴링을 이용 규칙 R4 를 먼저 실행함 .

이와 같은 과정을 반복하여 목표를 찾아감

53

Page 54: 인공지능 (Artificial Intelligence)

54

지식표현 규칙기반 시스템 (Rule-based System)

지식 베이스( 문제영역 관련지식 )

사실 베이스

규칙 베이스

규칙 실행기

스케쥴러

추론 엔진( 문제 해결 지식 )

사용자질의 응답

결론 유도

Page 55: 인공지능 (Artificial Intelligence)

객체지향 개념 객체지향 (Object-Oriented) 개념

클래스와 객체 , 인스턴스

클래스의 계층구조

계승 , 다중계승 , 재사용성

메시지 , 메쏘드

캡슐화 , 정보 은닉

객체 모델링

객체지향 언어의 장점 현실세계의 개념적 개체는 단일 개념의 객체로 묘사

가능

데이터 사이에 존재하는 일반화와 집단화를 쉽게 표현

multimedia 데이터 처리가 용이

시스템 설계 및 구축시 생산성 향상

동시 처리를 자연스럽게 지원

편리한 사용자 인터페이스 지원

55