데이터 일반화란 무엇인가?
데이터 일반화(Data Generalization)는 비교적 낮은 수준의 값(예: '나이' 속성의 숫자 값)을 더 높은 수준의 개념(예: '청년', '중년', '노년')으로 대체하여 데이터를 요약하는 기법입니다. 데이터베이스에 저장되는 데이터의 양이 방대하기 때문에, 낮은 수준의 세부 값이 아니라 일반화된 추상화 수준에서 개념을 간결하고 명확하게 정의할 수 있다면 분석에 큰 도움이 됩니다.
다층적 추상화를 통한 데이터 탐색
데이터 집합을 여러 수준의 추상화로 일반화할 수 있으면 사용자는 데이터의 전반적인 행동 양상을 손쉽게 파악할 수 있습니다. 예를 들어 AllElectronics 데이터베이스에서 영업 관리자는 개별 고객 거래 내역을 하나씩 살펴보는 대신, 지역별 고객 그룹, 그룹별 구매 빈도, 고객 소득 수준 등으로 요약된 상위 수준의 데이터를 확인하는 것을 선호할 수 있습니다.
이러한 접근 방식은 개념 설명(concept description)이라는 개념으로 이어지며, 이는 데이터 일반화의 한 형태입니다.
개념 설명의 정의와 역할
개념(concept)은 일반적으로 '자주 구매하는 고객', '대학원생' 등과 같은 데이터 집합을 의미합니다. 데이터 마이닝 작업으로서 개념 설명은 단순히 데이터를 나열하는 것이 아닙니다. 대신 개념 설명은 데이터의 특성화와 비교를 위한 설명을 생성합니다. 정의하려는 개념이 객체의 클래스일 경우, 이를 클래스 설명(class description)이라고도 부릅니다.
특성화(Characterization)는 주어진 데이터 집합에 대한 간결하고 명확한 요약을 제공하며, 개념 또는 클래스 비교(concept/class comparison)(판별(discrimination)이라고도 함)는 두 개 이상의 데이터 집합을 비교하는 설명을 지원합니다.
개념 설명 시 고려해야 할 핵심 사항
1. 복잡한 데이터 유형과 집계
데이터 웨어하우스와 OLAP 도구는 차원(dimension 또는 속성)과 측정값(measure, 집계 서비스)을 포함하는 데이터 큐브 형태로 정보를 바라보는 다차원 데이터 모델에 기반합니다.
그러나 기존의 많은 OLAP 시스템은 차원을 비숫자 레코드로, 측정값을 숫자 정보로만 제한하고 있습니다. 실제 데이터베이스에는 숫자, 비숫자, 공간(spatial), 텍스트, 이미지 등 다양한 데이터 유형의 속성이 포함될 수 있으며, 이러한 속성들이 모두 개념 설명 과정에 반영되어야 합니다.
2. 사용자 제어 대비 자동화
데이터 웨어하우스에서의 온라인 분석 처리(OLAP)는 사용자가 주도하는 프로세스입니다. 드릴다운(drill-down), 롤업(roll-up), 슬라이싱(slicing), 다이싱(dicing)과 같은 OLAP 연산의 선택은 일반적으로 사용자가 직접 지시하고 관리합니다.
여러 OLAP 시스템의 제어 방식이 사용자 친화적이기는 하지만, 사용자는 각 차원이 지니는 의미와 중요성을 충분히 이해하고 있어야 합니다. 또한 만족스러운 데이터 설명을 얻으려면 긴 일련의 OLAP 연산을 정의해야 하는 번거로움도 있습니다.
따라서 어떤 차원(또는 속성)을 분석에 포함해야 하는지, 그리고 의미 있는 데이터 요약을 생성하기 위해 주어진 데이터 집합을 어느 수준까지 일반화해야 하는지 사용자가 판단하도록 돕는 보다 자동화된 프로세스가 필요합니다.