Protege란?
: Protégé(프로테제) 는 스탠포드 대학(Stanford University) 에서 개발한 OWL(Web Ontology Language) 기반 온톨로지 모델링 도구
1. 설치
protégé
A free, open-source ontology editor and framework for building intelligent systems Protégé is supported by a strong community of academic, government, and corporate users, who use Protégé to build knowledge-based solutions in areas as diverse as biomed
protege.stanford.edu

2. 새 온톨로지 생성 & FOAF 온톨로지 Import
File > Open from URL...




Window > SPARQL_Query

간단 FOAF 실습
1. FOAF 클래스 구조 확인하기
owl:Thing
└── foaf:Agent
├── foaf:Person
├── foaf:Group
├── foaf:Organization
└── etc.
여기서 foaf:Person 을 클릭하면:
- rdfs:label = Person
- rdfs:comment = A person
- SubClassOf = foaf:Agent
- DisjointWith = foaf:Organization, foaf:Group
→ 즉, 사람(Person)은 Agent의 종류이며 조직이나 그룹과는 동일할 수 없다는 의미.
2. 나만의 인스턴스(Person) 만들기
- 좌측 탭에서 Individuals 클릭
- 오른쪽 상단 클래스 선택: foaf:Person
- 아래에서 + 버튼(Add individual) 클릭
- 인스턴스 이름 입력: 예) 이름

3. Organization 인스턴스 만들기
① Individuals 탭에서 “Team” 클릭
→ 지금 화면처럼 보여야 합니다.
② 오른쪽 가운데 “Description: Team” 영역에서
Types 오른쪽의 “+” 버튼 클릭
③ 검색창에 입력:

4. Object Property로 개념 연결하기 (속성연결)


① Object property assertions → + 클릭
② “Property” 입력창에서 CTRL + SPACE 눌러 자동완성 창을 띄우세요.


5. 친구 관계 추가하기 (foaf:knows)
친구 추가 : 김훈종

① Individuals 탭에서 “이정륜” 선택
② 오른쪽 아래 “Object property assertions” → + 클릭

③ Property 칸 클릭 → CTRL + SPACE
④ Value(오른쪽 칸) 클릭 → CTRL + SPACE

6. 별명(nickname) 값을 인스턴스(사람)에게 적용하는 방법
① 왼쪽 (Data property hierarchy)
- 온톨로지에 존재하는 모든 Data Property(데이터 속성) 목록
- 예: foaf:firstname, foaf:age, foaf:family_name, foaf:geekcode 등
② 가운데 팝업 — "Create a new Data property"
- 현재 “nickname”이라는 새 속성 만듬
- Name : nickname
- IRI : http://purl.org/spar/foaf#nickname
③ 오른쪽 패널
- 해당 데이터 속성의 주석, 도메인(domain), 범위(range) 등을 설정하는 곳


① Individuals 탭에서 별명을 줄 사람 선택 => 나 자신
② 오른쪽 아래에서 "Data property assertions" 찾기

③ Property 칸 클릭 → CTRL + SPACE
④ Value(값) 칸 클릭 → 문자열 입력


지식 그래프(Knowledge Graph)의 정의와 특징
지식 그래프의 정의
지식 그래프는 **실세계의 개체(Entity)와 그들 사이의 관계(Relation)를 그래프 구조로 표현한 데이터**입니다. 이는 노드와 엣지라는 핵심 요소를 통해 복잡한 정보를 구조화하여 표현합니다.
핵심 구성 요소
1. 노드 (Node, 개체)
- 사람, 장소, 사물, 개념 등 실세계에서 의미를 가지는 모든 대상을 나타냅니다.
2. 엣지 (Edge, 관계)
- 두 개체(노드) 사이의 연관성이나 관계를 정의합니다. (예: '~을 개발했다', '~의 고향이다')
온톨로지(Ontology) 적용에 따른 특징
지식 그래프는 온톨로지의 유무와 관계없이 구성될 수 있지만, 온톨로지를 적용함으로써 데이터의 품질과 활용도가 크게 향상됩니다.
온톨로지가 없어도 지식 그래프인가?
온톨로지가 없더라도 개체 간의 **의미론적인 관계**를 포함하고 있다면 지식 그래프로 볼 수 있습니다. 다만, 관계의 정의가 형식적이지 않을 수 있습니다.
온톨로지가 적용될 경우의 이점
- 관계 명확성 향상: 관계의 정의와 제약 조건이 명확해집니다.
- 데이터 일관성 확보: 모든 데이터가 정의된 스키마를 따르므로 일관성이 유지됩니다.
- 기계적 해석 가능성 증대: 형식화된 구조 덕분에 AI나 기계가 데이터를 더 정확하게 해석하고 추론할 수 있습니다.
결론
지식 그래프는 데이터 간의 복잡한 연결 고리를 직관적으로 보여주어, 정보 검색, 추천 시스템, 자연어 이해 등 다양한 인공지능 분야에서 **정보 활용의 핵심 기반**을 제공합니다. 온톨로지 적용은 이러한 지식 그래프를 더욱 정교하고 강력하게 만듭니다.
'Data & AI Intelligence > ▶AI & Agent' 카테고리의 다른 글
| 모델 컨텍스트 프로토콜 (MCP) (0) | 2025.12.12 |
|---|---|
| Ollama Cloud (0) | 2025.12.12 |
| RAG(검색 증강 생성) (0) | 2025.12.11 |
| Segment Anything · PaddleOCR · OpenDataLab 핵심 가이드 (0) | 2025.12.11 |
| Milvus + LangChain 기반 RAG 구성 예제 (0) | 2025.12.10 |