[개념] 지식을 표현하기 위한 객체 사이의 관계를 나타내는 논리 또는 형식 체계.
(지식 표현: 문제해결을 위한 지식을 컴퓨터에서 실행 가능한 형태로 나타내는 것)
* 객체: 상수나 변수 혹은 함수
* 술어: 원자 (atomic) 문장, 참/거짓의 값을 가짐
* 연산자: 술어 간 연결을 통한 복합 문장 구성
* 관계: 술어로 표현
* 특성: 변수 와 한정 기호(quantifier) 로 표시
예)
변수: x
상수: Socrates
술어: Human(·), Mortal(·)
소크라테스는 사람이다: Human(Socrates)
모든 사람은 (언젠가) 죽는다: ∀Human(x) → Mortal(x)
소크라테스는 죽는다: Mortal(Socrates)
http://terms.tta.or.kr/dictionary/dictionaryView.do?word_seq=052623-8
[구성]
1) 일차 논리 (first-order predicate logic, FOL)
변수에만 전칭 한정사와 존재 한정사를 쓸 수 있도록 한 술어논리
존재양화사(existential quantifier =∃)
보편양화사(universal quantifier = ∀)
예)
∃x =x가 존재한다
∀xFx = 모든 x가 F를 만족한다
2) 이차 논리 (고차논리, high-order predicate logic))
변수뿐만 아니라 함수, 술어기호 등에 대해서 전칭 한정사와 존재 한정사를 쓸 수 있도록 한 술어논리
존재양화사(existential quantifier =∃)
보편양화사(universal quantifier = ∀)
개념(concept)
속성(property)
k is a natural number if and only if ∀F[F0 ∧ ∀x∀y((Fx ∧ Sxy) → Fy) → Fk]
∀F : 모든 개념에 대해서~
∃F : ~개념이 존재한다
[추론] 전칭 한정사와 존재 한정사를 논리식의 맨 앞으로 끌어내는 변환
- 전칭 한정사에 결합된 변수 : 임의의 값 허용
- 존재 한정사에 결합된 변수 : 스콜렘 함수를 통해 대응되는 술어 기호를 참(True)으로 만드는 값을 변수에 대응
[추론 단계]
1. 단일화 과정: 논리 융합을 적용하여 대응되는 리터럴이 같아지도록 변수의 값을 맞춰주는 과정
2. 지식 증명: 논리곱 형태로 변환
3. 논리 프로그래밍 언어 구성: Horn 절, 프롤로그(PROLOG), 백트래킹을 이용하여 실행
[AI] 기호 기반 인공 지능에서 사용하는 지식 표현 및 추론의 모체
프로그래밍 언어인 프롤로그(PROLOG), 왓슨 자연어 처리 활용
http://nlp.jbnu.ac.kr/AI2019/slides/ch03.pdf (이건명. 인공지능 튜링 테스트에서 딥러닝까지, 2018. 생능출판사)
https://slidesplayer.org/slide/17178347/
'07.AI' 카테고리의 다른 글
인공지능 - 플랫폼 - AutoML - NAS(Neural Architecture Search) (0) | 2020.07.13 |
---|---|
인공지능 - 플랫폼 - 텐서플로우 (tensorflow) (0) | 2020.07.10 |
[IS-098] AI기술의 국가통계 활용 사례 및 국내 도입 촉진 방안 (0) | 2020.06.29 |
초 연결과 융합의 시대, 실리콘밸리에서 일고 있는 4차 산업혁명의 물결 ① AI 반도체 (0) | 2020.06.29 |
인공지능 뉴로모픽 반도체 기술 동향 (0) | 2020.06.29 |