차원의 저주 (Curse of Dimensionality)
쉽게 풀면
선 위에 점 10개를 촘촘히 채우려면 10개만 있으면 되지만, 같은 밀도로 사각형(2차원) 전체를 채우려면 100개, 정육면체(3차원)를 채우려면 1000개가 필요합니다. 변수(차원)가 하나씩 늘어날 때마다 필요한 데이터의 양이 기하급수적으로 늘어나는 것입니다. 차원의 저주는 바로 이 현상을 가리킵니다. 변수가 많아질수록 같은 개수의 데이터로는 공간을 거의 채우지 못해 데이터끼리 서로 멀리 떨어져 보이게 되고, 그 결과 "가장 가까운 이웃"을 찾거나 유사도를 비교하는 알고리즘의 성능이 크게 떨어집니다. 논문에서 변수가 매우 많은 고차원 데이터를 다룰 때 주성분분석과 같은 차원 축소 기법을 함께 언급하는 이유가 바로 이 때문입니다.
왜 중요한가
차원의 저주는 머신러닝, 통계학, 유전체학 등 변수의 수가 표본 수보다 훨씬 많은 상황을 다루는 거의 모든 분야에서 모델 설계의 출발점이 되는 문제입니다. 거리 기반 알고리즘의 신뢰도 저하뿐 아니라 과적합 위험 증가, 필요한 표본 크기의 급격한 증가 등과도 직결되기 때문에, 차원 축소나 특징 선택, 정규화 기법을 도입하는 근거로 논문에서 자주 언급됩니다. 최근에는 고차원 이미지·텍스트·유전자 데이터를 다루는 딥러닝 연구에서도 표현 학습이나 임베딩 설계의 배경 논리로 등장합니다.
논문에서는 이렇게 쓰입니다
이 문장은 변수가 지나치게 많아 데이터 간 거리 기반 비교가 잘 작동하지 않는 문제가 발생했고, 이를 해결하기 위해 중요한 정보만 남기고 변수의 수를 줄이는 전처리를 거쳤다는 뜻입니다.
실험 대상 수는 적은데 측정 항목(유전자)은 매우 많은 전형적인 고차원-저표본 상황에서, 관련성이 높은 항목만 골라내는 작업을 먼저 수행했다는 뜻입니다.
가능한 상황의 조합 수가 변수 증가에 따라 감당할 수 없을 만큼 늘어나는 문제를, 모든 경우를 일일이 저장하지 않고 근사적으로 추정하는 방법으로 해결했다는 뜻입니다.
조금 더 깊게 보면
차원의 저주는 흔히 두 가지 현상으로 나타납니다. 하나는 데이터 점들 사이의 거리가 차원이 커질수록 서로 비슷해져 최근접 이웃과 가장 먼 이웃의 거리 차이가 상대적으로 무의미해지는 것이고, 다른 하나는 동일한 데이터 밀도를 유지하는 데 필요한 표본 수가 차원에 비례해 기하급수적으로 늘어나는 것입니다. 이를 완화하기 위한 접근으로는 주성분분석 같은 선형 차원 축소, t-SNE·UMAP 같은 비선형 임베딩, 그리고 불필요한 변수를 제거하는 특징 선택 등이 있으며, 어떤 방법이 적절한지는 데이터의 구조와 이후 분석 목적에 따라 달라집니다.
주의할 점
차원의 저주는 변수 수가 많다고 무조건 나타나는 것이 아니라, 표본 크기에 비해 변수 수가 상대적으로 많을 때 두드러집니다. 따라서 데이터 표본을 늘리거나, 불필요한 변수를 제거하는 특징 선택, 혹은 차원 축소 기법을 함께 검토하는 것이 일반적인 대응 방법입니다.