온톨로지(Ontology)는 철학과 정보과학에서 각각 정의되는 개념으로, 원래 철학의 형이상학 분야에서 비롯되었으며 현대에는 컴퓨터 과학, 인공지능, 시맨틱 웹 등 정보기술 분야에서 폭넓게 사용된다.
어원
온톨로지는 그리스어 'ontos(존재, 실재)'와 'logos(학문, 논리)'의 합성어에서 유래하였다. 17세기 독일 철학자 야콥 로하르트(Jacob Lorhard)가 'ontologia'라는 용어를 최초로 문헌에 사용하였고, 이후 크리스티안 볼프(Christian Wolff)가 이를 체계화하여 "존재하는 모든 것에 공통된 속성을 연구하는 학문"으로 정립하였다.
철학에서의 온톨로지 (존재론)
철학에서 온톨로지는 '존재론'이라고도 불리며, 형이상학의 대표적인 세부 분야 중 하나이다. 전통적으로 "존재로서의 존재(being qua being)"를 다루는 학문으로 정의된다. 즉, 이 세계에는 어떤 종류의 존재자(물리적, 현상적, 개념적, 추상적, 감성적 등)가 존재하는지, 그 본성(본질)은 무엇인지, 존재자들 사이에는 어떤 관계가 있는지, 나아가 존재자들로부터 세계가 어떻게 구성되는지를 탐구하는 학문 분야이다. 아리스토텔레스는 기원전 4세기 『범주론(Categories)』에서 세계의 모든 것을 분류하려 시도하였으며, 이후 칸트, 헤겔, 하이데거 등 수많은 철학자들이 존재론을 발전시켜 왔다.
정보과학에서의 온톨로지
1990년대 인공지능 연구자들은 서로 다른 시스템 간의 데이터 교환 시 개념 정의의 불일치로 인한 문제를 해결하기 위해 온톨로지 개념을 도입하였다. 1993년 스탠퍼드 대학의 톰 그루버(Tom Gruber)는 정보과학 분야에서 온톨로지를 "개념화에 대한 명시적이고 정형화된 명세서(an explicit and formal specification of a conceptualization)"로 정의하였다. 이후 보르스트(Borst)는 이 정의에 '공유(shared)'의 개념을 추가하여 "공유된 개념화에 대한 정형화된 명세"로 보완하였다.
정보과학에서 온톨로지는 특정 분야(domain)에 속하는 개념(클래스, class)과 그 개념들 사이의 관계, 속성(property), 개체(instance), 공리(axiom) 등을 정형 언어로 기술한 데이터 모델이다. 주요 구성 요소는 다음과 같다.
- 클래스(Class): 사물이나 개념의 범주를 나타낸다. 예: '사람', '동물', '키보드'
- 개체(Instance): 클래스에 속하는 구체적인 실체이다. 예: '홍길동', 'LG전자 ST-500 키보드'
- 속성(Property): 클래스나 개체의 특정 성질이나 값을 나타낸다. 예: hasSize, hasColor
- 관계(Relation): 클래스와 개체 간의 관계를 나타내며, 계층적 관계(taxonomic relation, 예: isA)와 비계층적 관계(non-taxonomic relation, 예: cause)로 구분된다.
온톨로지 언어
온톨로지를 표현하기 위한 형식 언어로는 RDF(Resource Description Framework), OWL(Web Ontology Language), SWRL(Semantic Web Rule Language) 등이 대표적이다. RDF는 subject, object, predicate의 삼중 구조로 단순한 관계를 표현하며, OWL은 관계의 계층 구조와 논리적 제약 조건을 포함하여 보다 정밀한 추론을 가능하게 한다. SWRL은 추론 규칙을 정의하는 데 사용된다.
온톨로지의 종류
구축 범위에 따라 일반 온톨로지(일반 상식 수준의 개념을 대상)와 영역 온톨로지(특정 학문이나 분야에 한정)로 나뉜다. 시스템 측면에서는 언어 온톨로지(자연어 인터페이스 지원)와 공리 온톨로지(논리적 추론 지원)로 구분되기도 한다.
적용 분야
온톨로지는 인공지능(AI) 분야에서 지식 표현과 추론을 위해 가장 먼저 활용되었으며, 정보검색 분야에서는 용어의 의미적 모호성을 해소하고 검색 정확도를 높이는 데 사용된다. 시맨틱 웹(Semantic Web)의 핵심 기술로서 웹 상의 정보를 기계가 이해하고 처리할 수 있게 하는 기반 역할을 하며, 전자상거래, 유비쿼터스 컴퓨팅, 생물정보학(유전체 온톨로지, Gene Ontology 등), 의료 정보 시스템 등 다양한 분야에서 응용되고 있다. 대표적인 공개 온톨로지 사례로는 WordNet(어휘 참조 시스템), Cyc(대규모 기초 온톨로지), SNOMED CT(의학 용어 체계), Gene Ontology(유전체학) 등이 있다.