개념 계층의 정의
개념 계층(concept hierarchy)은 낮은 수준의 개념 집합에서 더 높은 수준의 일반적인 개념으로 이어지는 일련의 매핑을 의미합니다. 개념 계층은 정보나 개념을 계층 구조 또는 특정 부분 순서(partial order)로 체계적으로 조직화함으로써, 간결하고 고수준의 방식으로 지식을 정의하고 여러 추상화 수준에서 데이터 마이닝 지식을 도출하는 데 활용됩니다.
개념 계층은 트리(tree) 형태로 구성된 노드들의 집합으로 이루어져 있으며, 각 노드는 '개념'이라 불리는 속성의 값을 정의합니다. 특별한 노드인 "ANY"는 트리의 루트(root)로 지정됩니다. 또한 개념 계층 내 모든 노드에는 수준(level) 번호가 부여되는데, 루트 노드의 수준은 1이며, 루트가 아닌 노드의 수준은 부모 노드의 수준보다 1만큼 큽니다.
값들이 노드에 의해 정의되기 때문에 노드의 수준은 곧 값의 수준을 설명하는 데에도 사용될 수 있습니다. 이를 통해 개념 계층은 원시(raw) 데이터를 더 높고 일반화된 추상화 수준에서 관리할 수 있게 해줍니다.
개념 계층의 4가지 유형
1. 스키마 계층(Schema Hierarchy)
스키마 계층은 데이터베이스 내 속성들 간의 전체 또는 부분 순서를 나타냅니다. 이를 통해 속성 사이에 이미 존재하는 의미적 관계를 정의할 수 있습니다. 하나의 데이터베이스에서는 여러 가지 시퀀스와 속성 그룹화 방식을 사용해 두 개 이상의 스키마 계층을 만들 수도 있습니다.
2. 집합-그룹화 계층(Set-Grouping Hierarchy)
집합-그룹화 계층은 특정 속성이나 차원의 값들을 그룹 또는 일정한 범위 값으로 묶어 구성합니다. 계층의 부분 순서가 속성의 실제 인스턴스나 값의 집합 위에서 표현되기 때문에 '인스턴스 계층(instance hierarchy)'이라고도 부릅니다. 이러한 계층은 다른 유형보다 실질적인 기능적 의미가 크기 때문에 가장 널리 사용됩니다.
3. 연산-유도 계층(Operation-Derived Hierarchy)
연산-유도 계층은 데이터에 적용되는 일련의 연산(operation)을 통해 표현됩니다. 이러한 연산은 사용자, 전문가 또는 데이터 마이닝 시스템에 의해 정의될 수 있으며, 주로 수학적 성격의 속성에 적용됩니다. 연산의 범위는 단순한 범위 값 비교부터 데이터 클러스터링, 데이터 분포 분석 알고리즘처럼 복잡한 것까지 다양합니다.
4. 규칙 기반 계층(Rule-based Hierarchy)
규칙 기반 계층에서는 전체 개념 계층 또는 그 일부가 규칙(rule)의 집합으로 표현되며, 현재 데이터와 규칙 정의에 따라 동적으로 계산됩니다. 이 유형의 계층은 격자(lattice)와 유사한 구조로 그래픽하게 정의되며, 각각의 자식-부모 경로는 하나의 일반화(generalization) 규칙과 연결됩니다.
정적 생성과 동적 생성
개념 계층의 생성 방식은 데이터 세트의 성격에 따라 구분됩니다. 미리 준비된 고정된 데이터 세트를 기반으로 계층을 만드는 경우를 정적(static) 생성, 데이터가 변화하면서 실시간으로 계층을 구성하는 경우를 동적(dynamic) 생성이라고 합니다. 상황과 분석 목적에 맞는 생성 방식을 선택하는 것이 효율적인 데이터 마이닝의 핵심 요소 중 하나입니다.