온톨로지란? 개념부터 RDF·지식 그래프 실습까지
온톨로지(Ontology)는 특정 분야의 개념과 관계, 그 의미를 명시적으로 정의한 모델입니다. 데이터에 같은 단어를 쓰더라도 시스템마다 뜻이 다르면 함께 활용하기 어렵습니다. 온톨로지는 무엇을 같은 개념으로 볼지, 개념 사이에 어떤 관계가 성립하는지를 표현해 데이터를 해석할 공통 기준을 제공합니다.
온톨로지와 지식 그래프는 어떻게 다를까요?
예를 들어 “나비는 고양이다”는 개별 대상에 관한 사실이고, “모든 고양이는 포유류다”는 개념 사이의 관계입니다. 지식 그래프는 대상과 사실을 연결하며, 온톨로지는 그 연결에 쓰이는 개념과 관계의 의미를 정의합니다. 두 정보를 함께 사용하면 직접 기록하지 않은 “나비는 포유류다”라는 결론을 추론할 수 있습니다.
RDF는 사실을 주어·술어·목적어로 표현하는 데이터 모델이고, OWL은 온톨로지를 표현하는 언어입니다. SPARQL은 RDF 데이터를 질의하는 데 사용합니다. 이 블로그에서는 이러한 표현 방식과 함께, 규칙으로 사실에서 결론을 도출하는 Datalog도 다룹니다.
처음 읽는 분을 위한 순서
- 그래프·지식 그래프·온톨로지의 차이: DIKW 피라미드를 따라 데이터의 연결과 의미 모델을 구분합니다.
- RDF 모델링 실습: S-P-O 분해: 전력 모듈과 센서 사례를 주어·술어·목적어로 나누고 사실과 가설을 구별합니다.
- SPARQL과 Datalog 이해하기: 데이터 질의와 규칙 기반 추론을 어떻게 바라볼지 살펴봅니다.
- 온톨로지와 고정점: 규칙을 반복해서 적용할 때 새로운 사실이 더 이상 나오지 않는 지점을 설명합니다.
공공데이터로 실습하기
모델을 직접 만들어 보려면 먼저 데이터로 답하고 싶은 질문을 정하고, 원본 데이터에서 확인할 수 있는 사실을 살펴보는 과정이 필요합니다. 개념과 관계를 정한 뒤 실제 데이터를 연결하고 질의해 보면, 처음 설계한 모델이 질문에 답할 수 있는지 확인할 수 있습니다.
『온톨로지 비법노트』 출간 이야기에서는 서울시 공공데이터로 강의와 책의 실습을 구성한 경험을 소개합니다.
온톨로지 관련 글
- 온톨로지 비법노트를 출간했습니다
- 시맨틱 리즈닝, 의미를 정하고 그 결과를 계산한다는 것
- Datalog를 이야기하면 왜 고정점과 온톨로지를 만나게 될까
- DIKW 피라미드로 읽는 그래프, 지식 그래프, 그리고 온톨로지
- 시맨틱 태깅, 단순한 키워드를 넘어 지식의 연결로
- 시간이 흐르면 사실도 변한다: RDF Reification으로 맥락 기록하기
- SPARQL의 SQL 유사성이 주는 함정, 그리고 Datalog
- RDF 처리에 CPU와 메모리가 중요한 이유
- S-P-O 분해 연습문제 풀이: 전력 모듈-센서 노이즈 간섭
- iCalendar의 진화: 텍스트에서 의미론적 웹으로
- Askitect를 위한 청사진: RDF로 대화 모델링하기
- Askitect, 그리고 프롬프트 엔지니어링의 진화