데이터 마이닝에서 데이터 축소(data reduction)는 방대한 데이터를 분석하기 전에 처리 효율을 높이기 위한 필수 전처리 과정입니다. 그중에서도 차원 축소(Dimensionality Reduction)와 수량 감소(Numerosity Reduction)는 목적과 방식이 서로 다른 두 가지 대표적인 기법입니다. 이 글에서는 각 기법의 개념을 살펴보고, 두 방식의 차이를 비교표를 통해 명확하게 정리해 드립니다.
차원 축소(Dimensionality Reduction)
차원 축소는 데이터 인코딩이나 변환 기법을 적용하여 원본 데이터를 축소되거나 "압축된" 형태로 표현하는 방식입니다. 만약 압축된 데이터로부터 원본 데이터를 아무런 손실 없이 완전히 복원할 수 있다면, 이러한 데이터 축소를 무손실(lossless) 방식이라고 합니다. 반대로 복원된 데이터가 원본 데이터의 근사치에 불과하다면 손실(lossy) 방식이라고 부릅니다.
DWT(이산 웨이블릿 변환)와 DFT(이산 푸리에 변환)
DWT는 사인(sine)과 코사인(cosine)을 활용하는 신호 처리 기법인 DFT와 밀접한 관련이 있습니다. 일반적으로 DWT는 DFT보다 우수한 손실 압축 성능을 보입니다. 동일한 개수의 계수(coefficient)를 유지한다고 가정했을 때, DWT 버전이 DFT 버전보다 원본 데이터를 더 정확하게 근사할 수 있습니다. 따라서 동일한 수준의 근사 정확도를 얻기 위해서는 DWT가 DFT보다 더 적은 저장 공간을 필요로 합니다.
수량 감소(Numerosity Reduction)
수량 감소는 대체 가능한 더 작은 형태의 데이터 표현을 선택하여 데이터 볼륨 자체를 줄이는 기법입니다. 이러한 기법은 크게 매개변수적(parametric) 방법과 비매개변수적(nonparametric) 방법으로 나눌 수 있습니다.
- 매개변수적 방법: 모델이 데이터를 추정하므로 실제 데이터 대신 모델의 파라미터만 저장하면 됩니다. 대표적인 예로 회귀 모델과 로그-선형(log-linear) 모델이 있습니다.
- 비매개변수적 방법: 히스토그램, 클러스터링, 샘플링 등을 통해 데이터의 축소된 표현을 저장하는 방식입니다.
차원 축소와 수량 감소 비교
아래 표는 두 기법의 주요 차이점을 한눈에 비교한 것입니다.
| 구분 | 차원 축소 | 수량 감소 |
|---|---|---|
| 기본 개념 | 데이터 인코딩 또는 변환을 적용하여 원본 데이터의 축소된(압축된) 표현을 얻습니다. | 더 작은 형태의 대체 데이터 표현을 선택하여 데이터 볼륨을 줄입니다. |
| 핵심 기법 | 이산 웨이블릿 변환(DWT)은 선형 신호 처리 기법으로, 데이터 벡터 X에 적용하면 수치적으로 다른 웨이블릿 계수 벡터 X'로 변환합니다. 두 벡터의 길이는 같습니다. 이 기법을 데이터 축소에 적용할 때는 각 튜플을 n차원 데이터 벡터, 즉 n개의 데이터베이스 속성에서 측정된 값 X=(x1, x2, …, xn)로 간주할 수 있습니다. | 회귀 및 로그-선형 모델을 사용하여 주어진 데이터를 근사할 수 있습니다. 선형 회귀에서는 데이터가 직선에 맞도록 모델링됩니다. 예를 들어 반응 변수(response variable) y를 예측 변수(predictor variable) x의 선형 함수로 모델링하면 y = wx + b이며, 이때 y의 분산은 일정하다고 가정합니다. |
| 활용 목적 | 관련 없는 속성이나 중복된 속성을 제거하는 데 사용할 수 있습니다. | 단순히 원본 데이터를 더 작은 형태로 표현하는 기법입니다. |
| 데이터 손실 여부 | 부적절한 데이터는 손실될 수 있습니다. | 데이터 손실이 없으며, 전체 데이터가 더 작은 형태로 표현됩니다. |
정리하면, 차원 축소는 데이터의 특성(속성) 수를 줄이는 데 초점을 맞추는 반면, 수량 감소는 데이터 레코드(튜플)의 수나 저장 용량을 줄이는 데 중점을 둡니다. 두 기법은 상호 배타적이지 않으며, 실제 데이터 마이닝 프로젝트에서는 함께 활용되어 분석 효율을 극대화하는 경우가 많습니다.