yuns

[Protege 기초 실습11] Object Property - Automated Classification and Open World Reasoning 본문

protege

[Protege 기초 실습11] Object Property - Automated Classification and Open World Reasoning

yuuuun 2022. 12. 29. 18:34
반응형

무료 오픈 소스 온톨로지 편집기 실습 - Automated Classification and Open World Reasoning

tutorial을 보고 실습을 진행해보고자 한다.


SohoPizza와 MargheritaPizza의 토핑이 채식주의자를 위한 토핑인 것을 쉽게 눈치챌 수 있다. 그렇기 때문에 reasoner를 이용하면 두 피자가 VegetraianPizza가 되어야 한다. reasoner를 활성화 해서 이것이 성립되는지 확인해보자.

이미지에서 보듯이, CheesyPizza는 잘 들어가있는 것을 확인할 수 있는데 VegetarianPizza는 값이 잘 안 들어가있는 것을 확인할 수 있다. 이는, 어떤 것이 존재하지 않는다고 명시적으로 언급되기 전까지는 무언가가 존재하지 않는다고 가정할 수 없기 때문이다. 다시 말해, 무언가가 사실이라고 진술되지 않았기 때문에 그것이 거짓이라고 가정할 수 없다. 우리가 원하는대로 하기 위해서는 hasTopping에 closure axiom이라는 것을 추가해야 된다.

Closure Axioms

closure axiom: 속성에 대한 폐쇄 공리는 지정된 필러에 의해서만 채워질 수 있다고 말하는 속성에 따라 작용하는 보편적인 제한으로 구성이며, 제한에는 속성에 대한 기존 제한에서 발생하는 필러의 합집합인 필러가 존재

예를 들어, MargheritaPizza에 대한 hasTopping에서의 closure axiom은 Mozzarella Topping과 TomatoTopping의 합집이라고 한다. $$\forall hasTopping(MozzarellaTopping \cup TomatoTopping$$

직접 실습을 해보면서 이해를 해보자!

MargheritaPizza의 subclass에 아래의 창을 이용해서 다음 내용(MozzarellaTopping, TomatoTopping)을 추가해준다.(여기서 only로 추가하는 것을 잊지 않는다!)

그럼 아래와 같이 뜨는 것을 확인할 수 있다.

마찬가지로 SohoPizza도 추가해준다. (MozzarellaTopping, TomatoTopping, ParmezanTopping, OliveTopping)

comment가 잘못 써있어서 이후에 삭제함..

completeness을 위해서, hasTopping property에 AmericanaPizza와 AmericanHotPizza에 closure axiom을 추가해준다.

AmericanPizza의 TomatoTopping에 create closure axiom을 추가
hasTopping only ~ 내용이 추가되었다!

AmericanHotPizza도 마찬가지로 추가해준다. 이후, reasoner를 다시 실행시켜주고 inferred에 들어가면 MargheritaPizza와 SohoPizza가 VegetarianPizza에 들어가있는 것을 볼 수 있다.

도식화하면 아래와 같다!

반응형
Comments