정의
**규칙 추출(Rule Extraction)**은 지식 그래프의 패턴과 구조로부터 논리 규칙을 자동으로 발견하고 추출하는 프로세스이다.
세 가지 추출 방식
1. 구조 기반 추출 (Structural Mining)
지식 그래프의 패턴 발견:
패턴 1: (X, father, Y) → (X, parent, Y)
패턴 2: (X, mother, Y) → (X, parent, Y)
패턴 3: (X, parent, Y) ∧ (X, parent, Z) → (Y, sibling, Z)
추출된 규칙:
├─ father(X, Y) → parent(X, Y)
├─ mother(X, Y) → parent(X, Y)
└─ parent(X, Y) ∧ parent(X, Z) ∧ Y≠Z → sibling(Y, Z)
2. 통계 기반 추출 (Statistical Mining)
지식 그래프 통계:
관찰:
├─ (X, enemy, Y)인 경우 98%는 ¬(X, friend, Y)
├─ 신뢰도: 98%
└─ 규칙 생성 가능
추출된 규칙:
└─ enemy(X, Y) → ¬friend(X, Y) [신뢰도 98%]
3. 의미 기반 추출 (Semantic Mining)
개념 의미로부터 규칙 도출:
개념 정의:
├─ parent: "자식을 낳거나 입양한 사람"
├─ father: "남자 parent"
└─ mother: "여자 parent"
추출된 규칙:
├─ father(X, Y) → parent(X, Y)
├─ mother(X, Y) → parent(X, Y)
└─ female(X) ∧ parent(X, Y) → mother(X, Y)
실제 과정
입력: 지식 그래프 (수백만 개의 (주체, 관계, 객체))
Step 1: 빈도 분석
├─ (X, enemy, Y)가 얼마나 자주 나타나는가?
└─ 패턴 식별
Step 2: 신뢰도 계산
├─ (X, enemy, Y)인 경우, ¬(X, friend, Y)인 확률?
└─ 신뢰도 임계값 설정 (예: >95%)
Step 3: 규칙 생성
├─ 높은 신뢰도 패턴만 규칙화
└─ enemy(X, Y) → ¬friend(X, Y)
Step 4: 검증
├─ 홀드아웃 데이터로 규칙 검증
└─ 정확도 측정
출력: 검증된 규칙 집합
규칙의 품질 평가
| 지표 | 설명 | 목표 |
|---|---|---|
| 신뢰도 (Confidence) | 규칙이 맞을 확률 | >90% |
| 지지도 (Support) | 규칙이 적용되는 사례 수 | >100 |
| 정확도 (Precision) | 검증 데이터에서 맞은 비율 | >85% |
| 재현율 (Recall) | 놓친 경우의 비율 | >80% |
응용
- 온톨로지 자동 생성 — KG → 규칙 추출 → 온톨로지
- 지식 완성 — 규칙으로부터 빠진 정보 추론
- 오류 감지 — 규칙 위반 감지
- 도메인 이해 — 데이터로부터 도메인 구조 파악
관련 개념
- Knowledge Graph — 입력 소스
- Ontology — 출력 형태
- OG-RAG — 활용 시스템
- — 추출된 규칙 사용
핵심: 규칙 추출은 “데이터 속에서 숨겨진 논리를 캐내는” 과정이다.