TL;DR
이 영상은 파이썬 라이브러리 DeepOnto를 활용하여 온톨로지와 지식 그래프를 관리하고, BERTMap 파이프라인을 통해 온톨로지 정렬을 수행하는 방법을 다룬다. 온톨로지 로드, 클래스 구조 탐색, HermiT 추론기를 이용한 논리적 일관성 검사 과정을 피자 온톨로지 예제로 설명한다. 또한, BERTMap을 사용하여 서로 다른 온톨로지 간의 대응 관계를 학습하고 정렬하는 전체 파이프라인을 구축하며, 매핑 결과의 정밀도와 재현율을 평가하는 방법까지 상세히 안내한다.
챕터별 상세
DeepOnto 환경 설정 및 JVM 초기화
DeepOnto는 자바 기반의 온톨로지 처리 도구인 OWL API를 파이썬에서 사용할 수 있게 래핑한 라이브러리이다.
import os
os.environ['JAVA_HOME'] = '/usr/lib/jvm/java-8-openjdk-amd64'
from deeponto.onto import Ontology
onto = Ontology('pizza.owl')DeepOnto 라이브러리를 사용하여 온톨로지 파일을 로드하는 초기 설정 코드
피자 온톨로지 로드 및 구조 탐색
IRI는 온톨로지 내의 모든 요소를 유일하게 구분하기 위한 식별자 체계이다.
from deeponto.onto import Ontology
onto = Ontology('pizza.owl')
print(onto.all_classes.keys())
print(onto.get_all_object_properties())
print(onto.get_all_data_properties())피자 온톨로지 내의 클래스, 객체 속성, 데이터 속성을 출력하는 코드
논리적 일관성 검사
추론기는 온톨로지에 정의된 규칙을 바탕으로 논리적 모순을 찾아내는 도구이다.
BERTMap 정렬 파이프라인
BERTMap은 BERT 모델을 활용하여 온톨로지 엔티티 간의 의미적 유사성을 학습하는 기술이다.
from deeponto.onto import Ontology
onto = Ontology('pizza.owl')
print(onto.check_consistency())온톨로지의 논리적 일관성을 검사하는 코드
결과 분석 및 평가
임계값은 모델이 두 엔티티를 동일하다고 판단하는 기준 점수이다.
용어 해설
- 온톨로지(Ontology)
- — 지식 표현의 한 방식으로, 특정 도메인 내의 개념, 속성, 그리고 이들 간의 관계를 명시적으로 정의한 체계이다. 데이터의 의미를 컴퓨터가 이해할 수 있도록 구조화하여 지식 그래프 구축의 기반이 된다.
- 지식 그래프(Knowledge Graph)
- — 엔티티(개체)와 그들 간의 관계를 그래프 형태로 표현한 데이터베이스이다. 복잡한 데이터 간의 연결성을 시각화하고 추론을 가능하게 하여 검색 엔진이나 추천 시스템에 활용된다.
- 국제화 자원 식별자(IRI)
- — 온톨로지 내의 모든 클래스, 개체, 속성을 고유하게 식별하기 위한 URI의 확장 형태이다. 중복 없는 식별을 통해 서로 다른 온톨로지 간의 데이터 통합을 가능하게 한다.
- 웹 온톨로지 언어(OWL)
- — 웹상에서 온톨로지를 정의하고 교환하기 위해 설계된 표준 언어이다. 클래스, 속성, 제약 조건 등을 정의하여 기계가 데이터를 해석하고 추론할 수 있는 논리적 기반을 제공한다.
- 온톨로지 정렬(Ontology Alignment)
- — 서로 다른 온톨로지 간에 의미적으로 대응하는 엔티티를 찾아 연결하는 과정이다. 이기종 데이터 소스를 통합하거나 지식 그래프를 확장할 때 필수적인 기술이다.
언급된 리소스
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.




