1. 차원의 저주(Curse of Dimensionality)의 개념
| 개념도 | ① 데이터 차원 증가 시 같은 데이터 밀도를 유지하기 위해 필요한 데이터 양 증가 ② 필요한 데이터 양 미충족 시 데이터 밀도 감소로 인한 데이터 분석/처리 문제 발생 |
|---|---|
| 일반적인 차원의 저주 | 데이터의 차원이 증가함에 따라 데이터의 밀도가 낮아져서 데이터 분석의 효율성과 정확도가 감소하는 현상 |
| 인공지능 분야 차원의 저주 | 모델의 특징이 증가함에 따라 데이터의 밀도가 낮아져서 모델의 학습 및 예측 성능이 저하되는 현상 |
- 인공지능 분야에서 특징 수가 증가함에 따라 분류기의 성능도 증가하다가 최적의 특징 수에 도달한 뒤 성능이 저하되는 현상으로 휴즈 현상(Hughes Phenomenon)과 같은 사례가 발생
2. 차원의 저주 발생 상황 및 문제점
(1) 차원의 저주 발생 상황
- 모델의 특징 등 데이터 차원이 증가하면 인공지능 모델 성능도 증가하다가 최적의 차원 수에 도달한 뒤 필요한 데이터의 양이 증가하며 모델의 성능이 급격히 저하
(2) 차원의 저주의 문제점
| 구분 | 문제점 | 영향도 |
|---|---|---|
| 데이터 측면 | 데이터 희소성 증가 | – 같은 양의 데이터는 고차원 공간에서 데이터 밀도 감소 |
| 다중공선성 문제 | – 상관관계가 높은 변수들이 많아 다중공선성 문제 발생 | |
| 필요 데이터량 증가 | – 학습에 필요한 데이터의 수가 기하급수적으로 증가 | |
| EDA 분석 어려움 | – 고차원 데이터 시각화와 탐색적 패턴 분석 난이도 증가 | |
| 모델 측면 | 계산 복잡성 증가 | – 데이터 처리 및 모델 학습에 필요한 계산량 급격히 증가 |
| 과적합 위험 증가 | – 모델이 훈련 데이터에만 적합, 신규 데이터 예측 성능 저하 | |
| 거리기반 알고리즘 성능 저하 | – 데이터 간 거리가 균일 분포, 거리기반 알고리즘 성능 저하 | |
| 차원 독립성 증가 | – 일부 차원이 모델 학습에 기여하지 않고 노이즈로 작용 |
- 차원이 증가하면 모델 신뢰성이 낮아지고 계산 복잡도가 증가하여 인공지능 시스템 성능 저하 발생
2. 차원의 저주를 해결하기 위한 방안
| 구분 | 해결 방안 | 세부 활동 |
|---|---|---|
| 데이터 측면 | 차원 축소 알고리즘 적용 | – PCA, LDA 등 적용하여 데이터의 차원을 축소 |
| Feature Selection | – 랜덤 포레스트, LASSO 회귀 등 불필요 변수 제거 | |
| 데이터 증강 | – SMOTE 기법을 통해 KNN 기반 신규 데이터 합성 | |
| 정규화 | – Min-Max Scaling, 표준화 통해 차원간 균형 유지 | |
| 모델 측면 | Feature Engineering | – Autoencoder, TSNE 등 의미있는 저차원 데이터 생성 |
| 희소행렬 처리 | – SVD 특이값 분해 활용 희소 데이터 차원 축소 | |
| 모델 경량화 | – Dropout, Pruning 등 모델 단순화와 경량화 | |
| 알고리즘 교체 | – CNN 등 차원의 저주 영향 최소화 |
- 차원의 저주는 데이터의 본질 중 하나이기 때문에 완전 소거가 불가능하며, 위 해결 방안 외 모델 경량화 및 최적화를 통해 성능 극대화 전략이 필요
[참고]
- Essam Debie & Kamran Shafi, Theoretical Advances, Implications of the curse of dimensionality for supervised learning classifier systems: theoretical and empirical analyses, 2017.8