• 검색 결과가 없습니다.

지식-공학 방법론

문서에서 외국도서관 정책자료 (페이지 89-100)

일러두기

3. 지식-공학 방법론

앞서 언급했듯이 온톨로지를 개발하는 하나의 ‘정도(正道)’는 없다. 이 지침에서 우리는 온톨로지를 개발에 필요한 고려사항을 논의하고, 가능한 개발 방법 중 한 가지를 제안할 것이다. 그리고 온톨로지 개발을 위한 반복적인 접근 방식에 대해 설명할 것인데, 우선 개 괄적인 첫 단계에서부터 시작한다. 이 후에 반복해서 온톨로지를 검토하고 수정하여 구체 적인 사항을 채워 나갈 것이다. 이 과정에서 우리는 온톨로지 설계자에게 필요한 모델링 결정사항과 이외 다른 구축 방법들의 장단점 및 의의를 논의할 것이다.

우선, 앞으로 계속 언급하게 될 온톨로지 설계를 위한 몇 가지 기본 규칙을 강조하고자 한다. 이 규칙들은 다소 독단적으로 보일 수 있다. 그러나 대부분의 경우에 온톨로지 설계 에 관한 결정을 내리는 데 활용할 수 있을 것이다.

대상 분야를 모델링하는데 하나의 정도(正道)는 없다 항상 대체 가능한 대안들이 존 재한다. 최선의 해결책은 여러분이 생각해 둔 활용 방식과 앞으로 고려하고 있는 확 장 방식에 따라 달라진다.

온톨로지 개발은 반복적인 과정을 거쳐야 한다.

온톨로지에 포함된 개념은 실세계의 사물(objects, 물리적 또는 논리적)에, 개념 간의 관계는 구축 대상 분야에 근접해야 한다. 이러한 개념이나 관계는 대부분 여러분이 속한 분야를 기술하는 문장에서 명사(객체)나 동사(관계)로 나타난다.

즉, 온톨로지의 용도, 온톨로지의 상세성이나 일반성 등에 따라 앞으로의 모델링 결정을 하게 될 것이다. 여러 가능한 방법 중에서, 우리는 주어진 임무에 가장 적합하고, 직관적으 로 이해할 수 있으며, 확장성이 좋고, 관리하기 쉬운 것을 선택해야 한다. 또한 온톨로지는 실세계에 대한 모델이고, 온톨로지의 개념은 그 실세계를 반영해야 한다는 것을 명심해야 한다. 우리가 온톨로지의 초기 버전을 정하고 나면, 우리는 응용프로그램이나 문제-해결 수단, 해당 분야 전문가와의 논의, 또는 이 모든 것을 통해서 그것을 평가하고 결함을 발 견해 수정할 수 있다. 결과적으로 우리는 대부분의 경우에 초기 온톨로지를 검토할 필요가 있다. 이러한 반복적인 과정은 온톨로지의 생애주기 전체에 걸쳐 지속될 것이다.

1단계. 대상 분야와 범위 결정

우리는 대상 분야와 범위를 결정하는 데서부터 온톨로지 개발을 시작할 것을 제안한다.

이 단계에서는 몇 가지 기본적인 질문에 대한 답이 필요하다.

온톨로지에서 다루는 대상 분야는 무엇인가.

온톨로지 용도는 무엇인가?

온톨로지를 통해 어떤 유형의 정보 질의에 대한 응답을 제공할 것인가?

온톨로지 이용자와 관리자는 누구인가?

이 질문에 대한 답변은 온톨로지 설계 과정이 진행되면서 변경될 수 있지만, 어느 시점 에서나 온톨로지 모델의 범위를 제한할 수 있다. 와인과 음식 온톨로지를 생각해 보자. 음 식과 와인을 표현하는 것이 온톨로지 구축 분야가 된다. 우리는 이 온톨로지를 와인과 음 식의 좋은 궁합을 제안하는 응용프로그램에 사용할 것이다.

여러 종류의 와인과 메인요리, 와인과 음식의 좋은 궁합과 나쁜 궁합을 기술하는 개념 들이 온톨로지에 등장할 것이다. 동시에, 이 온톨로지에서는 양조장의 재고 목록이나 식당 의 종업원들을 관리하기 위한 개념은 와인과 음식에 대한 개념(notions)과 관련이 있다 해 도 제외할 것이다.

우리가 기술하려는 온톨로지가 와인 잡지에 수록된 논문에 대한 자연어 처리에 사용된 다면, 온톨로지에 포함된 개념에 대한 동의어와 품사 정보를 포함해야 할 것이다. 온톨로 지가 고객이 와인을 주문하는 것을 돕는데 사용된다면, 소매가 정보를 포함해야 할 것이 다. 또한 와인 구매자가 와인 저장 창고를 채우는데 온톨로지를 이용한다면, 도매가와 재 고 수량이 필요할 것이다. 해당 분야에 대한 온톨로지 관리가 이용자와 다른 언어로 온톨

이와 같은 유형의 질문에 응답하는데 필요한 정보를 포함하고 있는가? 이 응답이 구체적 인 상세성 수준을 요구하는가, 아니면 특정 분야의 대표성을 요구하는가? 이 적합성 질문 들은 단지 개요만 제공하면 되는 것으로 망라적일 필요는 없다.

와인과 음식 분야에서는 다음과 같은 질문들이 적합성 질문 후보가 된다.

와인을 선정할 때 고려해야할 와인의 특성에는 어떤 것이 있는가?

보르도는 레드 와인인가 화이트 와인인가?

카베르네 쇼비뇽은 해산물과 잘 어울리는가?

구운 고기에 가장 잘 어울리는 와인은?

와인의 어떤 특성이 음식과의 궁합에 영향을 주는가?

와인의 향이나 농도가 와인의 양조년도에 따라 달라지는가?

내퍼 진펀들(Napa Zinfandel)의 좋은 양조년도는?

이 질문 목록으로부터 판단하건데, 온톨로지는 다양한 와인의 특성과 와인의 종류, 좋은 양조년도와 나쁜 양조년도, 와인을 선정하는데 필요한 음식의 분류 정보, 와인과 음식의 추천할 만한 조합에 관한 정보를 포함해야 한다.

2단계. 기존 온톨로지의 재활용 고려

특정 분야나 업무에 대하여 누군가가 먼저 해 놓은 것이 있는지, 기존 정보원을 수정하 고 확장할 수 있는지의 여부를 확인하는 것은 항상 가치 있는 일이다. 우리가 개발하려는 시스템이 특정 온톨로지나 제어 어휘를 포함하고 있는 다른 응용프로그램과 상호작용할 필요가 있다면, 기존 온톨로지를 재사용하는 것은 필수 요건이다. 많은 온톨로지들이 전자 형태로 이용가능하며 여러분들이 사용하는 온톨로지 개발 환경으로 가져올 수 있다. 많은 지식-표현 시스템이 온톨로지를 가져오거나 내보낼 수 있기 때문이다. 온톨로지를 표현하 는데 사용한 형식(formalism)은 대부분 별 문제가 되지 않는다. 지식-표현 시스템이 특정 형식과 직접적으로 연계되지 않는다 해도, 온톨로지를 하나의 형식에서 다른 형식으로 변 환하는 것은 어렵지 않다.

웹과 문헌에는 재사용할 수 있는 온톨로지 라이브러리가 있다. 예를 들어 우리는 Ontoli ngua 온톨로지 라이브러리(http://www.ksl.stanford.edu/software/ontolingua/)나 DAML 온톨로지

라이브러리(http://www.daml.org/ontologies/)를 이용할 수 있다. 또한 공개용인 상업분야 온톨 로지(예를 들어 UNSPSC (www.unspsc.org), RosettaNet (www.rosettanet.org), DMOZ (www.dm oz.org)가 있다.

프랑스 와인에 대한 지식 베이스가 이미 존재한다고 하자. 우리가 이 지식 베이스와 기 반 온톨로지를 가져올 수 있다면 우리는 프랑스 와인에 대한 분류 정보 뿐 아니라 와인을 구별하고 기술하는데 사용되는 와인 특성에 대한 분류 정보도 얻게 된다. 와인 속성에 대 한 목록은 이용자가 와인을 구입하는데 참고하는 www.wines.com 와 같은 상업용 웹사이트 에서 이용할 수 있다.

그러나 이 지침에서 우리는 이용 가능한 기존 온톨로지가 없고, 처음부터 시작한다고 생각하자.

3단계. 온톨로지의 주요 용어 열거

우리가 진술문(statement)을 생성하거나, 이용자에게 설명하고 싶은 모든 용어에 대한 목 록을 만드는 것이 유용하다. 우리가 논의하고 싶은 용어는 무엇인가? 그 용어들은 어떤 속 성을 가지고 있는가? 그 용어들에 대해서 말하고자 하는 것은 무엇인가? 예를 들면, 주요 와인 관련 용어에는 와인(wine), 포도(grape), 양조장(winery), 생산지(location), 색깔(color), 농도(body), 향(flavor), 당도(sugar level); 생선(fish)이나 육류(red meat)와 같은 여러 유형의 음식; 화이트 와인(white wine)과 같은 와인의 하위 유형 등이 포함될 것이다. 초기에는 용 어가 표현하는 개념과 용어 간의 관계의 중복, 용어가 가질 수 있는 속성, 해당 개념이 클 래스인지 슬롯인지를 상관하지 않고, 용어에 대한 포괄적인 목록을 작성하는 것이 중요하다.

다음 두 단계 클래스 계층 개발과 개념의 속성(슬롯) 개발 는 상당히 얽혀 있어서, 어 느 것이 먼저고, 어느 것이 나중이라고 구분하기 어렵다. 일반적으로 우리는 각 계층에 속 한 개념들에 대한 간단한 정의를 작성하고, 각 개념이 가진 속성을 기술해 나간다. 이 두 단계는 온톨로지 설계 과정에서 가장 중요한 단계이다. 여기서는 이 단계들을 간단히 기술 하고, 다음 두 절을 할애하여 온톨로지 구축 시의 고려사항, 흔히 빠질 수 있는 함정, 필요 한 의사결정 등과 같은 더욱 복잡한 이슈들에 대해 논의할 것이다.

4단계. 클래스와 클래스 계층의 정의

클래스를 계층구조로 개발하는 데 사용가능한 몇 가지 접근방식이 있다(Uschold and Gruninger 1996):

하향식 개발 방식은 대상 분야에 속하는 가장 일반적인 개념에 대한 정의로부터 시 작해서 순차적으로 개념을 구체화시킨다. 예를 들면, 우리는 일반 개념인 와인(Wine) 과 음식(Food)에 대한 클래스를 만드는 것부터 시작한다. 그리고 우리는 와인(Wine) 클래스를 그 하위 클래스인 화이트 와인(white wine), 레드 와인(Red wine), 로제 와인

자. 우리는 그 다음에 이 두 클래스의 공통 상위 클래스이며, 보르도(Bordeaux)의 하 위 클래스인 메독(Medoc) 클래스를 작성한다.

조합식 개발 방식은 하향식과 상향식 접근방식을 혼용하는 것이다: 우리는 가장 대 표적인 개념을 우선 정의한 다음 그 개념을 적절하게 일반화 및 구체화시킨다. 우리 는 와인(Wine)과 같은 최상위 개념과 마르고(Margaux)와 같은 구체적인 개념에서 시 작할 수 있다. 그 다음에 우리는 메독(Medoc)과 같은 중간 수준 개념으로 이 둘을 연 결할 수 있다. 그리고 우리는 프랑스 전 지역에서 생산되는 모든 와인에 대한 클래 스를 작성하여 여러 중간 수준 개념을 생성할 수 있다.

그림 2.는 다양한 수준의 개념을 분할하는 가능한 방법을 나타낸다.

그림 2.는 다양한 수준의 개념을 분할하는 가능한 방법을 나타낸다.

문서에서 외국도서관 정책자료 (페이지 89-100)