top of page

[펌] The Semantic Ontology

the Semantic Ontology

미 숙



1. 서론


현재의 웹은 사람이 보고 잘 이해할 수 있도록 하기 위한 브라우저의 디스플레이 또는 레이아웃 기술에 초점을 맞추고 있다. HTML을 이용한 이러한 표현방식은 문서의 내용과 의미를 나타내는 시맨틱 정보를 표현하기가 어려우며, 따라서 사람이 아닌 프로그램 또는 소프트웨어 에이전트가 자동으로 문서로부터 의미를 추출하기가 어렵다.

이러한 문제점을 해결하기 위해서 1990년대 말에 W3C(World Wide Web Consortium)에서 시맨틱 웹(Semantic Web)을 제안하였다.

Tim Berners Lee에 의해 제안된 시맨틱 웹은 컴퓨터 (Intelligent Soft Agents)가 웹상의 정보를 이해하고, 정보를 창출할 수 있는 웹 환경으로서, 정보의 탐색과 의사결정이 인간이 아닌 컴퓨터가 할 수 있도록 만들어진 Web 환경이다3). 즉, 메타데이터의 개념을 통하여 웹 문서에 시맨틱 정보를 덧붙이고, 이를 이용하여 에이전트가 의미 정보를 자동으로 추출할 수 있는 패러다임을 조성하는 것이다. 부수적으로 의미 정보의 자동 추출뿐 아니라 정보의 확장이나 공유 등도 가능하다.

Semantic Web의 목적은 웹에 있는 정보를 컴퓨터가 쉽게 이해 할 수 있도록 도와주는 표준과 기술을 개발하여 시맨틱 검색, 데이터 통합, 네비게이션, 업무의 자동화 등을 지원하

것이다. Semantic Web에서 이러한 기능을 지원하기 위해서는 컴퓨터의 지능적인 정보처리가 가능토록 웹 문서 내에 지식 표현을 위한 온톨로지를 삽입하고, 지식간의 관계를 설정하며 추론 규칙을 포함 시켜야한다. 이를 통해서 사용자가 원하는 정보를 정확하게 전달해줄 수가 있다. 시멘틱 웹에서 온톨로지는 특정 도메인에 맞는 지식을 개념화(conceptization)하고 이를 명세화(specifition)한다. 즉, 시멘틱 웹에서 온톨로지란 사람과 컴퓨터간의 공유되는 지식을 개념화한 구체적인 형식이며, 개념화와 개념화간의 관계를 표현하는 것으로 정의된다[1].



2. 관련연구


2.1 시맨틱 웹


인터넷이 광범위하게 사용됨에 따라서 웹은 다양하며 무한한 용량의 데이터 원천으로 부각되었다. 그러나 웹의 사용이 증가함에 따라 웹 상에서 사용자가 원하는 정보의 검색, 구성 및, 통합하는 작업이 매우 어려워졌다. 이러한 문제를 해결하기 위해 1990년대 말에 W3C (World Wide Web)에서는 차세대 웹으로써 시맨틱 웹을 제시하였다. 시맨틱 웹은 웹 데이터에 의미 (meaning)을 부여하여 컴퓨터와 같은 기계가 이해할 수 있는 언어로 만들어 정보의 재사용성을 향상시키고, 컴퓨터가 정보를 이해할 수 있도록 하여 이기종 간의 상호운용성을 보장한다. 그러나 현재 시맨틱 웹에 대한 시스템 아키텍춰는 제안되어져 있지 않으며, 시맨틱 웹의 응용 분야 개발에 있어서 개별적인 도메이에 맞는 시스템의 아키텍춰만이 제안 및 개발되어져 있는 실정이다. 시맨틱 웹의 중요 기술인 온톨로지는 시맨틱 웹의 개발과 연구에 있어서 가장 기반이 된다. 이러한 온톨로지는 특정 도메인에 맞는 지식을 개념화 (conceptualizaton)하고 이를 명세화 (spcification)한다[3]. 즉, 시맨틱 웹에서 온톨로지란 사람과 컴퓨터간의 공유되는 지식을 개념화한 구체적인 형시이며, 개념화와 개념화간의 관계를 표현하는 것으로 정의된다[2].


2.2 RDF


Resource Description Framework(RDF)는 메타데이터를 처리하기 위한 기초이며, 웹에서 기계가 이해할 수 있는 정보를 교환하는 어플리케이션 간에 상호 운용 성을 제공한다.

RDF의 목표중의 하나는 표준화되고 상호 운용성 있는 방식으로, XML에 기초한 데이터에 의미를 지정하도록 하는 것이다. RDF와 XML은 상호보완적이다. 즉, RDF는 메타데이터 모델이며, 참조를 통해 이송과 파일 축적에 필요로 하는 코딩에 관한 여러 문제를 언급한 것이다[9, 10].


2.2.1 RDF Model and Syntax


RDF는 지정된 특성과 그 값을 표현하기 위한 모델이다. RDF 모델은 다양한 데이터 표현분야에서 확립된 원칙에 따라 표현한다. RDF 특성은 자원의 속성으로서, 전통적인 속성-값에 해당된다. 그리고 RDF 특성은 자원간의 관계를 표현하며 따라서 RDF 모델은 엔티티-관계(ER)와 유사하다. 객체지향 용어로 표현하면 자원은 객체, 특성은 사례변수에 해당된다.

기본적인 데이터 모델은 세 개의 객체 유형으로 구성된다.

자원: RDF 형식으로 기술되는 모든 것을 자원이라고 한다. 자원은 웹 페이지, 특정한 HTML 요소나 XML요소, 웹을 통해 접근할 수 없는 객체일 수도 있다. 자원에는 항상 URL과 선택요소인 앵커 ID가 합쳐져서 이름이 부여된다. 어느 것이라도 URI를 가지며, 식별기호를 부여할 수 있다.

특성: 자원을 기술하기 위해 사용된 특정한 관점, 특징, 속성, 관계이다. 각 특성은 특정한 의미, 허용되는 값, 특성이 기술하는 자원의 유형, 다른 특성과의 관계를 정의한다.

문(스테이트먼트): 특정 자원과 지정된 특성, 그 특성의 값을 RDF 문이라고 한다. 문은 구성하는 이 세부분을 각각 주부(subject)와 술부(prodicate), 객체(object)라고 한다. 문의 객체(즉 특성 값)는 다른 자원일 수 있고, 혹은 리터럴 일 수 있다. 즉, 자원(URI로 지정된)이거나 단순히 용어 열이거나 XML로 정의된 기타 기본적인 데이터 유형일 수 있다[9].


2.2.2 RDF Schema


스키마 기술언어는 지식 표현 분야와 데이터 베이스 스키마 명세언어분야, 그래프 데이터 모델 분야의 개념에서 영향을 받은 선언적인 표현언어이다. RDF 스키마는 XML 문서 구조와 관련한 특수한 제약조건을 가진, XML DTDs와 XML 스키마와 달리, RDF 데이터 모델에서 제시된 스테이트먼트의 해석에 관한 정보를 제공한다. RDF 스키마는 구문 스키마뿐만 아니라 데이터 모델이 따라야 할 제약조건도 명시할 수 있다. RDF 스키마 명세서는 시소러스의 논리구조를 표현한 RDF 모델을 작성하는데 필요한 충분한 자원을 제공한다.

RDF 스키마 유형 시스템은 Java와 같은 객체지향 프로그래밍 언어의 유형 시스템과 유사하다. 그러나 RDF는 클래스의 사례가 가질 수 있는 특성으로 클래스를 정의하는 대신, RDF 스키마는 특성이 적용되는 자원 클래스로 특성을 정의 한다는 점에서 이들 여러 시스템과 다르다. 이는 rdfs:domain, rdfs:range 제약조건의 역할을 의미한다. 예를 들어 author라는 특성은 Book이라는 영역과 Literal이라는 범위를 가진 것으로 정의할 수 있다. 반면, 전통적인 시스템에서는 유형 Literal의 author라는 속성을 가진 클래스 Book으로 정의 할 수 있다. RDF 특성 중심의 접근 방식이 갖는 이점중의 하나는 기존의 자원에 관해 원하는 어떤 것이라도 누구라도 쉽게 기술 할 수 있다는 점이다.


2.3 토픽맵


토픽맵 모델의 핵심 요소는 토픽(Topic), 어커런스(Occurence), 어소시에이션 (Association)으로 볼 수 있다. 토픽은 객체지향 모델에서의 클래스나 객체에 해당하는 것으로 표현하고자 하는 대상을 가리키고 어커런스는 토픽에 종속되는 개념으로 해당 토픽에 대한 실제 내용이 담겨있는 자원의 주소(URI로 표현된다)나 지식 데이터 자체를 가리킨다. 그리고 토픽들 사이에는 토픽타입과 토픽간의 상하관계와 토픽들간의 연관성을 표현하는 어소시에이션이 있다.[6] 온톨로지를 구축하기 위해서는 지식을 설명할 수 있는 용어(term)를 정의하고 용어들 사이의 관계를 정의한다. 용어들 사이의 관계는 분류 체계를 표현하는 taxonomy와 개념간의 연관관계를 표현하는 relation으로 나뉘어진다. 온톨로지가 정의 되면 용어를 토픽으로, taxonomy를 토픽 타입과 토픽간의 관계로, 그리고 relation을 토픽들

사이의 어소시에이션으로 매핑하여 초기 토픽맵을 생성한다. 토픽맵을 표현하는 기술 언어로 XTM(XML Topic Maps)[6]이 있다. XTM은 토픽맵 모델의 각 요소를 나타내는 태그 집합과 엘리먼트들 사이의 구조를 정의하고 있으며 토픽맵을 기술하는 표준포맷으로 사용되고 있다[4].


2.4 온톨로지 생성


현재의 웹은 사람을 위한 표현 위주의 웹 데이터를 사용하고 있어서 유용한 정보를 이끌어 내기가 쉽지 않고, 또한 증가하는 데이터를 효과적으로 처리하기 위해 기계와 사람에 의해 이해되고 해석될 수 있는 형태의 정보가 필요하다. 시맨틱 웹의 구현을 가능하게 하는 핵심기술은 도메인 내의 개념들과 개념들 사이의 관계들을 정형적으로 기술한 온톨로지이다. 그러나 기존의 관련 연구들은 수작업을 통한 온톨로지 생성을 하는 방식이었는데, 이 방법은 온톨로지 생성이 어려울 뿐 아니라 시간이 많이 소비되는 문제점을 가지고 있다. 이 논문에서는 도메인 온톨로지를 (반)자동으로 생성하는 방법론이 제안되었다. 방법론은 데이터마이닝 기법들인 AOI (Attribute-Oriented Induction)와 ID3 알고리즘을 사용한다[7].


2.4.1 데이터 마이닝과 시맨틱 웹


데이터 마이닝 기법들에는 속성 지향 귀납 추리 (AOI), 결정트리 (decision tree), 연관규칙 (association rules), 분류규칙 (classification) 등이 있는데, AOI와 ID3을 사용하고 있다. 이 기술들이 사람과 기계에 의해 직관적으로 이해 될 수 있을 뿐 아니라 기계적인 처리 절차를 가시화 할 수 있기 때문에 타당성 검증이 용이하다.

AOI를 이용한 기법은 데이터베이스의 잡음과 오류데이터를 없애거나 줄여서 대용량의 데이터로부터 정보 집약적인 형태로 정보를 축약할 수 있다. 그리고 ID3은 결정트리를 생성하는 알고리즘으로 속성들에 대한 정보의 수준을 판별 할 수 있도록 한다.

다음으로 시맨틱 웹과 데이터 마이닝의 관련성에 대해서 알아본다. 데이터 마이닝과 시맨틱 웹은 인공지능과 깊은 연관이 있는 응용으로써 지식의 재사용을 위해 기존 정보의 확장의 형태를 띠고 있고 기계에 의해 이해되어질 수 있으며, 개념 (정보)의 관계나 패턴을 도출함에 의해서 미래에 정보를 수용할 수 있다는 공통점을 바탕으로 한다. 시맨틱 웹 마이닝은 시맨틱 웹을 만드는데 있어서 의미 기반의 유용한 정보를 이끌어 내기 위하여 데이터 마이닝 기법을 사용한다.


2.4.2 온톨로지 자동 생성 시스템


온톨로지를 생성하기 위한 시스템 아키텍처를 설명한다. 첫 번째, 시스템 아키텍처는 데이터 마이닝 과정인 전 처리, AOI 그리고 ID3를 거쳐서 온톨로지를 생성시키는 단계로 이루어진다. 전 처리 단계를 거친 데이터들은 실세계에서 사용하는 데이터에서 나타날 수 있는 오류들을 줄이거나 제거한다. 이렇게 정재 된 정보를 통하여 AOI를 실행하기 때문에 정확한 정보를 집약할 수 있다. 또한, 이 정보들을 통하여 ID3 알고리즘을 수행하여 속성들에 대한 정보 집약 수준을 판별할 수 있다. 이와 같은 단계를 거쳐서 기존 데이터로부터 온톨로지 정보 추출하는데 있어 정확도를 높였다. 또한 각 단계에 따른 Visualization을 통하여 얻어진 온톨로지가 타당함을 명확하게 보일 수 있다.

번째는 구현단계로, 온톨로지 (반)자동 생성 단계를 설명한다. 첫째로 데이터베이스로부터 쿼리를 통하여 도메인 온톨로지에 적절한 후보 데이터들과 속성들을 검색한다. 두 번째 전 처리 (insertion, smoothing) 과정을 통하여 잘못된 속성 값들을 조정한다. 세 번째, 중복성이 없는 속성 값을 갖는 속성들을 제거한다. 네 번째, 데이터베이스의 개념 계층들을 토대로 데이터 마이닝의 drill-down, roll-up을 수행하여 속성 값을 일반화 시킨다. 다섯 번째, 도메인에 필요한 정보들이 제대로 처리 되었는지 도메인 정보를 토대로 판단하다. 만약 도메인에 필요한 정보들이 잘 처리되었다면 다음단계로, 아니면 처음단계로 돌아간다. 여섯 번째, 정보들이 집약된 속성들에 대해 ID3 기법을 적용하여 속성들에 대한 각각 정보의 값을 얻어내고, 그 결과 값을 다음 단계에 넘겨준다. 일곱 번째, 결과 값을 토대로 알맞은 온톨로지를 생성한다. 만약 필요한 정보들이 누락된 것이 있다면 처음 단계로 돌아간다. 이와 같은 단계를 거쳐 생성된 온톨로지는 저장소에 저장된다. 저장될 온톨로지의 형태는 RDF, DAML_+OIL과 DAML-S와 같은 형식이 된다[7].



3. 문제제기


기존의 웹의 HTML을 이용한 표현방식은 사용자에게 문서의 내용을 디스플레이 하는 정도의 역할만을 하였다. 기종의 웹은 문서의 내용과 의미를 나타내는 시맨틱 정보를 표현하기가 어렵다. 따라서 사람이 아닌 프로그램 또는 소프트웨어 에이전트가 자동으로 문서로부터 의미를 추출하기가 어렵다. 그래서 사용자가 어떤 정보를 검색하고자 검색창에 내용을 입력하였을때, 사용자가 원하는 정확한 정보를 구하기가 어렵다. 사용자가 원하는 내용과 무관한 많은 양의 내용으로 인해 사용자들은 웹의 검색을 효율적으로 사용할 수가 없다. 그러나 시맨틱 웹은 사용자들이 원하는 정보를 정확하게 사용자에게 전달해 줄 수 있는 지능형 웹으로써, 기존의 웹 검색에 비해서 훨씬 효율적이고 정확한 검색이 가능하게 해준다. 사용자가 원하는 정보를 기계가 처리하도록 프로그램화 하므로써, 웹은 사용자에게 효율적인 검색 결과를 가져다 줄 수가 있다.



4. 본론


이러한 시맨틱 웹을 구현하기 위해서는 메타데이터에 대한 정의를 하여야 한다. 이런 메타데이터에 정의를 하기 위해 필요한 것이 시맨틱웹의 기반이 되고 있는 온톨로지 이다.

온톨로지란 특정 도메인에 맞는 지식을 개념화 (conceptualizaton)하고 이를 명세화 (specification) 한다. 즉, 시맨틱 웹에서 온톨로지란 사람과 컴퓨터간의 공유되는 지식을 개념화한 구체적인 형시이며, 개념화와 개념화간의 관계를 표현하는 것으로 정의된다[3].


4.1 온톨로지


시맨틱 웹의 중요 기술인 온톨로지는 지식 표현을 위한 수단으로써 인공지능 분야에서 오랜 시간동안 연구를하고 있는 분야이다. 온톨로지란 공유되는 데이터들의 개념화한 형식적이고 명백한 규정이며, 이는 특정 분야에서 사용되는 표준 어휘들의 모음이라고 할 수 있다. 즉, 온톨로지는 도메인 내의 지식을 개념화하고 이를 명세화(specification)하는 것으로써 정의된다. 온톨로지는 어휘 사전의 역할 이외에 지식을 효과적으로 표현하기 위해 정보의 의미를 부여하고 또 정보간의 관계를 설정한다. 즉, 온톨로지는 광범위한 도메인에 적용이 가능하도록 표준을 제시함으로써 웹 문서에 나타난 지식을 표현, 공유와 재사용을 그 목적으로 하고 있다. 더 나아가 시맨틱 웹의 목적인 자동적인 실행과 추론을 하기 위해 그 중요성이 부각되고 있다[2].


4.2 시맨틱 웹을 위한 온톨로지 시스템의 설계


시맨틱 웹에서 온톨로지는 시맨틱 웹이 가능하게 하는 중요 기술이다. 다음 그림 1은 시맨틱 웹이 이루고 있는 계층 구조를 나타낸 것이다. 온톨로지는 RDF와 RDFS의 레이어 위에 존재하며 온톨로지는 그 상위 계층인 논리(logic)의 근간을 이루고 있다. 즉, 온톨로지는 도메인 내의 지식을 공유하고 추론을 가능하게 하는 역할을 담당하는 역할을 한다.

현재 온톨로지에 관한 연구는 온톨로지 저장소 (repository) 및 온톨로지의 생성과 온톨로지 버저닝 (versioning) 및 주석 (annotation) 처리와 온톨로지 학습과 통합등 각 분야별로 연구가 이루어지고 있다.

전체적인 시맨틱 웹의 시스템 아키텍처는 시스템의 흐름과 조직, 개발등에 있어서 로드맵과 같은 역할을 하며, 시맨틱 웹의 개발에 있어서 효율적이고 유기적인 설계 및 개발에 있어서 필요하다. 시맨틱 웹의 시스템 아키텍처 현재의 응용 프로그램들의 구조와 동일한 구조를 가지고 있다. 다음 그림은 시맨틱웹의 전체적인 시스템 아키텍처이다.

다음 그림 2는 온톨로지 저장소와 온톨로지 생성을 위한 온톨로지 생성기 부분, 온톨로지를 수정하기 위한 온톨로지 편집기 부분 및 온톨로지 학습과 온톨로지 통합을 하기 위한 구성 요소를 가지고 있으며, 온톨로지에 사용자가 주석을 첨부하기 위한 온톨로지 생성이나 수정이 될 때에 이를 버전닝 하기 위한 온톨로지 버저닝 구성요소등이 포함되어 있다.








4.3 온톨로지의 (반)자동 생성 알고리즘


온톨로지를 생성하기 위한 시스템 아키텍처 및 구현 단계를 설명한다. 첫 번째, 시스템 아키텍처는 데이터 마이닝 과정인 전 처리, AOI 그리고 ID3를 거쳐서 온톨로지를 생성시키는 단계로 이루어진다. 전 처리 단계를 거친 데이터들은 실세계에서 사용하는 데이터에서 나타날 수 있는 오류들을 줄이거나 제거한다. 이렇게 정재 된 정보를 통하여 AOI를 실행하기 때문에 정확한 정보를 집약할 수 있다. 또한, 이 정보들을 통하여 ID3 알고리즘을 수행하여 속성들에 대한 정보 집약 수준을 판별할 수 있다. 이와 같은 단계를 거쳐서 기존 데이터로부터 온톨로지 정보 추출하는데 있어 정확도를 높였다. 또한 각 단계에 따른 Visualization을 통하여 얻어진 온톨로지가 타당함을 명확하게 보일 수 있다. 두 번째는 구현단계로, 온톨로지 (반)자동 생성 단계를 설명한다. 첫째로 데이터베이스로부터 쿼리를 통하여 도메인 온톨로지에 적절한 후보 데이터들과 속성들을 검색한다. 두 번째 전 처리 (insertion, smoothing) 과정을 통하여 잘못된 속성 값들을 조정한다. 세 번째, 중복성이 없는 속성 값을 갖는 속성들을 제거한다. 네 번째, 데이터베이스의 개념 계층들을 토대로 데이터 마이닝의 drill-down, roll-up을 수행하여 속성 값을 일반화 시킨다. 다섯 번째, 도메인에 필요한 정보들이 제대로 처리 되었는지 도메인 정보를 토대로 판단하다. 만약 도메인에 필요한 정보들이 잘 처리되었다면 다음단계로, 아니면 처음단계로 돌아간다. 여섯 번째, 정보들이 집약된 속성들에 대해 ID3 기법을 적용하여 속성들에 대한 각각 정보의 값을 얻어내고, 그 결과 값을 다음 단계에 넘겨준다. 일곱 번째, 결과 값을 토대로 알맞은 온톨로지를 생성한다. 만약 필요한 정보들이 누락된 것이 있다면 처음 단계로 돌아간다. 이와 같은 단계를 거쳐 생성된 온톨로지는 저장소에 저장된다[7].



5. 요약


논문에서는 데이터의 의미를 처리할 수 있는 형태의 시맨틱 웹 기반구조를 구성하기 위하여 데이터마이닝 기법을 적용한 (반)자동적인 온톨로지 생성에 관한 시스템 아키텍처와 생성을 설계하였다. 또한 기존의 수작업 형태의 온톨로지 생성은 여러 가지로 불편하기 때문에 이러한 문제를 해결하기 위해서 (반)자동적으로 온톨로지를 생성하는 기법을 제안하였다. 기존의 웹의 검색 시스템에서 사용자가 원하는 정보를 정확하고 효율적으로 전달 해 주지 못하는 단점이 있다. 시맨틱 웹은 이러한 기존의 웹이 가지고 있는 문제점을 해결해 줄 수 있는 해법이 될 수 있다는 점에서 미래의 웹의 표준이 될 것으로 전망이 된다. 향후 연구로는 이러한 (반)자동적인 온톨로지 생성을 특정 도메인에 적용시켜 시맨틱 웹을 실제 구현을 하여 실험 평가를 하겠다.


조회수 0회댓글 0개

Comments


bottom of page