카테고리 없음

ML Interview - Curse of Dimensionality 차원의 저주

김 정출 2024. 11. 11. 00:40

Curse of Dimensionality

AI/ML에서 "차원의 저주"(Curse of Dimensionality)는 고차원 데이터에서 발생하는 문제들을 통칭하는 용어입니다. 데이터의 차원이 증가할수록 데이터 분석이나 학습이 어려워지는 현상을 말하며, 이는 주로 아래와 같은 문제로 나타납니다.

1. 데이터 희소성

  • 차원이 증가할수록 데이터가 차지하는 공간이 기하급수적으로 커지기 때문에, 고차원 공간에서 데이터는 매우 희소해집니다. 이는 데이터를 잘 대표할 수 있는 샘플이 충분하지 않다는 뜻으로, 데이터가 많아도 각 차원에서 균일하게 분포되지 않기 때문에 모델 학습에 어려움이 생깁니다.

 

2. 거리의 의미 상실

  • 고차원 공간에서는 두 데이터 포인트 간의 거리가 대부분 비슷해져서, 가까운 이웃을 찾거나 거리 기반 알고리즘을 적용하기가 어려워집니다. 예를 들어, 유클리드 거리가 고차원에서 점점 평준화되는 경향이 있어, k-최근접 이웃(KNN) 알고리즘과 같은 거리 기반 모델의 성능이 크게 저하됩니다.

 

3. 모델의 복잡성 증가

  • 차원이 높아질수록 모델이 고려해야 할 변수와 상호작용이 많아지기 때문에, 모델 복잡성이 증가하고 과적합(overfitting)의 위험이 커집니다. 데이터가 충분하지 않으면 모델은 고차원에서 특정 패턴이 아닌 잡음을 학습하게 될 가능성이 큽니다.

 

4. 계산 비용 증가

  • 차원이 증가할수록 처리해야 할 데이터가 많아지기 때문에 연산 복잡도도 높아집니다. 특히, 메모리와 연산 시간이 기하급수적으로 늘어날 수 있어, 계산 자원이 한정된 환경에서는 실질적인 문제로 이어집니다.

 

 

차원의 저주를 해결하는 방법

차원의 저주 문제를 완화하기 위해 다음과 같은 방법을 자주 사용합니다.

  • 차원 축소: PCA(주성분 분석), t-SNE, UMAP 등으로 차원을 줄여 정보가 풍부한 주요 특징만을 남기는 방법입니다.
  • 특징 선택: 중요하지 않거나 중복된 변수를 제거해 모델의 복잡도를 낮추는 방법입니다.
  • 정규화와 표준화: 모든 변수의 스케일을 비슷하게 맞춰, 고차원 데이터에서 거리 기반의 변수를 효과적으로 사용할 수 있게 합니다.

 

이처럼, 차원의 저주는 AI/ML 모델의 성능을 떨어뜨리는 주요 문제 중 하나로, 고차원 데이터를 다룰 때는 이를 극복하기 위한 다양한 방법을 사용해야 합니다.