[Knowledge Expression] 규칙과 프레임

2 minute read


규칙

규칙 (rule)

지식 표현 방법 중 규칙‘~이면 ~이다’ 또는 ‘~하면, ~하다’와 같은 조건부의 지식을 표현하는 형태의 문장입니다.

이는 직관적이며, 이해하기 쉽습니다.


예를 들면 아래와 같습니다.

  • 문장: 신호등이 녹색일 때는 건널목을 안전하게 건널 수 있고, 빨간색일 때는 길을 건너지 말아야 한다.
  • 대상, 속성, 행동 또는 판단의 정보 추출
    • 대상: 신호등
    • 속성: 녹색, 빨간색
    • 행동/판단: 건넌다, 멈춘다.
  • 표현
    • If 신호등이 녹생이다 Then 건넌다.
    • If 신호등이 빨간색이다 Then 멈춘다.

이 때 If 부분을 조건부라고 하며, Then 부분을 결론부라고 합니다.

조건부는 둘 이상의 조건을 ANDOR로 결합하여 구성할 수 있고, 결론부는 여러개의 판단 또는 행동을 포함할 수 있습니다.


규칙을 통한 지식 표현

규칙을 통한 지식 표현에는 다음의 타입들이 있습니다.

  • 인과관계
    • 원인을 조건부에 결과는 결론부에 표현
    • IF 연료통이 빈다 THEN 차가 멈춘다
  • 추천
    • 상황을 조건부에 기술하고 이에 따른 추천 내용을 결론부에 표현
    • IF여름철이다 AND 날이 흐리다 THEN 우산을 가지고 가라
  • 지시
    • 상황을 조건부에 기술하고 이에 따른 지시 내용을 결론부에 표현
    • IF 차가 멈추었다 AND 연료통이 비었다 THEN 주유를 한다
  • 전략
    • 일련의 규칙들로 표현
    • 이전 단계의 판정 결과에 따라 다음 단계에 고려할 규칙이 결정
    • IF 차가 멈추었다 THEN 연료통을 확인한다 AND 단계1을 끝낸다
    • IF 단계1이 끝났다 AND 연료통은 충분히 찼다 THEN 배터리를 확인한다 AND 단계2를 끝낸다
  • 휴리스틱
    • 경험적인 지식을 표현하는 것
    • 전문가적 견해는 최적을 항상 보장하는 것이 아니고 일반적으로 바람직한 것을 표현
    • 신뢰도와 함께 사용하기도 함
    • IF 시료가 액체이다 AND 시료의 PH가 6미만이다 AND 냄새가 시큼하다 THEN 시료는 아세트산이다



프레임

프레임 (Frame)

프레임이란 특정 객체 또는 개념에 대한 전형적인 지식슬롯(slot)의 집합으로 표현하는 것입니다.

아래 예시는 컴퓨터를 나타낸 프레임입니다.

image-20210923122719760


슬롯 (Slot)

슬롯frame-nameframe-type을 제외한 부분으로 객체의 각 속성을 기술하는 역할을 합니다.

각 슬롯은 슬롯 이름슬롯 값으로 구성되며, 슬롯 값은 복수 개의 패싯(facet)데몬(demon)을 포함 가능합니다.


패싯 (Facet)

슬롯 값의 구성 요소 중 하나인 패싯은 측면 또는 양상을 의미하는 단어로, 속성에 대한 부가적인 정보를 지정하기 위해 사용합니다.

패싯 이름패싯 값의 쌍으로 구성되며, 패싯 이름에는 다음의 것들이 있습니다.

  • value: 속성 값 (수, 문자열, 다른 프레임의 포인터 등)
  • data-type: 속성값의 자료형
  • default: 디폴트 값 (속성값이 주어지지 않았을 때 사용되는 초기값)
  • require: 슬롯에 들어갈 수 있는 값이 만족해야 할 제약 조건

image-20210923123309675


데몬 (Daemon)

슬롯 값의 또 다른 구성 요소인 데몬은 지정된 조건을 만족할 때 실행할 절차적 지식을 기술합니다.

데몬은 슬롯 값으로 데몬 실행조건데몬 이름의 쌍이 주어집니다.

  • ` if_needed` : 슬롯 값을 알아야 할 때(즉, 사용하려고 할 때)
  • if_added : 슬롯 값이 추가될 때
  • if_removed : 슬롯 값이 제거될 때
  • if_modified : 슬롯 값이 수정될 때

image-20210923123701928


프레임의 종류

프레임의 종류에는 부류(class)에 대한 정보를 표현하는 클래스 프레임특정 객체(instance)에 대한 정보를 표현하는 인스턴스 프레임이 있습니다.

프레임은 계층 구조를 갖출 수 있으며, 상위 클래스를 나타내는 프레임상위 프레임, 상위 프레임을 상속 받는 프레임하위 프레임이라고 합니다.

클래스 프레임 (상위 프레임)

image-20210923124113563

인스턴스 프레임 (하위 프레임)

image-20210923124213310



클래스와 객체

프레임은 클래스와 객체 개념, 상속 개념 등을 사용하며 현재 소프트웨어에서 사용되는 객체 지향의 근간이 되었다고 볼 수 있습니다.

프레임객체 지향 프로그래밍은 다음과 같은 특징을 갖습니다.

  • 객체 지향 프로그래밍
    • 소프트웨어 개발에 있어서 모듈화, 재사용성유지보수의 용이성을 고려한 프로그래밍 개념
    • 정보은닉정보 접근에 대한 제한 메커니즘
  • 프레임
    • 사람이 특정 대상에 대해 갖는 지식의 표현을 목표
    • 슬롯의 특정 상황에 따라 자동으로 호출되는 데몬 개념이 존재



정리

이상으로 지식 표현의 첫 포스팅을 마칩니다.

이번 포스팅에서는 규칙프레임에 대해 알아보았습니다.

규칙은 조건부의 지식을 나타내는 지식 표현 방법이며, 직관적이고 이해하기 쉽습니다.

프레임은 특정 대상에 대한 전형적인 지식(속성)을 기술하는 지식 표현 방법이며, 클래스와 객체 개념을 사용합니다.


다음 포스팅에서는 지식 표현 방법 중 논리에 대해 알아보도록 하겠습니다.

Leave a comment