[AI] 차원 축소 기법 정리

김성윤(Jack)·2025년 8월 22일

AI

목록 보기
5/9
post-thumbnail

1. 차원 축소 기법 정리

  • 고차원 데이터는 마치 복잡하게 얽힌 실타래와 같습니다.
  • 수많은 변수들은 데이터의 본질을 가리고, 분석과 시각화를 극도로 어렵게 만들죠.
  • 차원 축소(Dimensionality Reduction)는 이 실타래를 풀어 핵심 가닥만 남기는 과정과 비유할 수 있습니다.
  • 데이터의 중요한 구조를 보존하면서 더 낮은 차원으로 표현함으로써, 우리는 데이터에 대한 깊은 통찰을 얻고 모델의 성능을 향상시킬 수 있습니다.
  • 이제 수학적 기반, 직관적인 설명, 그리고 시각적인 이해를 통해 대표적인 차원 축소 기법들을 자세히 살펴보겠습니다.

2. 선형 기법: 선형 변환으로 데이터의 핵심 축 찾기

  • 선형 기법은 데이터를 더 낮은 차원의 선형 공간으로 변환하는 것을 목표로 합니다.
  • 이는 마치 그림자를 만드는 것과 같습니다.
  • 3차원 물체의 2차원 그림자는 물체의 기본적인 형태를 유지합니다.

1) 주성분 분석 (PCA, Principal Component Analysis)

수학적 기반

  • PCA의 핵심은 데이터의 공분산 행렬 CC를 분석하는 것입니다.
  • 공분산 행렬은 각 변수 간의 선형 관계를 나타냅니다.
  • PCA는 CC의 고유벡터(eigenvector) viv_i와 그에 대응하는 고유값(eigenvalue) λi\lambda_i를 계산합니다 (Cvi=λiviC v_i = \lambda_i v_i).
  • 고유벡터는 데이터의 분산이 가장 큰 방향을 나타내며, 고유값은 그 방향으로의 분산 크기를 의미합니다.

직관적 해석

  • PCA는 마치 데이터에 빛을 비추고 가장 뚜렷한 그림자를 찾는 과정과 같습니다.
  • 분산이 큰 방향은 데이터의 가장 중요한 '모양'을 담고 있으며, 우리는 이 방향으로 데이터를 투영하여 정보 손실을 최소화하면서 차원을 줄일 수 있습니다.

이미지

  • 위 이미지는 2차원 데이터에 대한 PCA를 보여줍니다.
  • PCA는 데이터를 PC1 축에 투영하여 1차원으로 차원을 축소할 때, 데이터의 분산을 최대한 보존합니다.

2) 특이값 분해 (SVD, Singular Value Decomposition)

수학적 기반

  • 임의의 m×nm \times n 행렬 AA는 세 개의 행렬의 곱으로 분해될 수 있습니다: A=UΣVTA = U\Sigma V^T.
  • 여기서 UUm×mm \times m 직교 행렬, Σ\Sigmam×nm \times n 직사각 대각 행렬 (특이값 σi\sigma_i를 대각 성분으로 가짐), VTV^Tn×nn \times n 직교 행렬의 전치 행렬입니다.
  • 특이값 σi\sigma_i는 행렬 AA의 '에너지' 또는 '중요도'를 나타냅니다.

직관적 해석

  • SVD는 데이터를 구성하는 기본적인 '모드' 또는 '패턴'으로 분해하는 것으로 생각할 수 있습니다.
  • 특이값이 큰 모드일수록 데이터의 주요 특징을 나타냅니다.
  • 우리는 작은 특이값에 해당하는 모드를 제거함으로써 데이터의 차원을 줄이면서 중요한 정보를 유지할 수 있습니다.

이미지

  • 위 이미지는 2차원 데이터를 SVD를 통해 표현하는 개념을 보여줍니다.
  • 데이터는 몇 개의 주요 방향(특이 벡터)의 선형 결합으로 근사될 수 있습니다.
  • 차원 축소는 중요도가 낮은 특이 벡터를 생략함으로써 이루어집니다.

3. 비선형 기법: 복잡한 데이터 구조 펼치기

  • 비선형 기법은 데이터가 선형 공간에 놓여 있지 않다고 가정하고, 고차원 데이터의 내재적인 저차원 구조 (매니폴드)를 찾아 펼치는 것을 목표로 합니다.

1) t-SNE (t-distributed Stochastic Neighbor Embedding)

수학적 기반

  • t-SNE는 데이터 포인트 간의 유사성을 확률 분포로 모델링합니다.
  • 고차원 공간에서 점 xix_ixjx_j 사이의 유사도 pijp_{ij}는 가우시안 커널을 사용하여 계산됩니다.
  • 저차원 공간에서의 대응하는 점 yiy_iyjy_j 사이의 유사도 qijq_{ij}는 자유도가 1인 t-분포를 사용하여 계산됩니다.
  • t-SNE는 pijp_{ij}qijq_{ij} 간의 쿨백-라이블러 발산(KL divergence)을 최소화하는 방향으로 저차원 임베딩을 학습합니다.

직관적 해석

  • t-SNE는 마치 고차원 공간에서 가까운 점들을 강력한 스프링으로 연결하고, 먼 점들은 약한 스프링으로 연결한 후, 이 스프링들이 가장 안정적인 상태를 찾도록 저차원 공간에 점들을 배치하는 것과 같습니다.
  • 이를 통해 유사한 데이터 포인트들은 저차원에서도 가깝게 군집을 형성하게 됩니다.

이미지

  • 위 이미지는 t-SNE가 고차원 데이터의 국소적인 이웃 관계를 저차원 공간에 효과적으로 보존하여 뚜렷한 클러스터들을 형성하는 것을 개념적으로 보여줍니다.

2) UMAP (Uniform Manifold Approximation and Projection)

수학적 기반

  • UMAP은 고차원 데이터가 리만 매니폴드에서 균일하게 샘플링되었다고 가정합니다.
  • 먼저, 각 데이터 포인트의 kk-최근접 이웃을 기반으로 퍼지 인접성 그래프(fuzzy simplicial set)를 구축합니다.
  • 그런 다음, 저차원 공간에서도 유사한 퍼지 인접성 그래프를 만들고, 이 두 그래프 사이의 범주 교차 엔트로피(categorical cross-entropy)를 최소화하는 방식으로 저차원 임베딩을 학습합니다.

직관적 해석

  • UMAP은 고차원 데이터의 지역적인 이웃 구조를 정확하게 포착하고, 이웃 관계를 기반으로 전체 데이터의 전역적인 구조를 보존하려고 시도합니다.
  • 이는 마치 지도를 만들 때, 가까운 지역 간의 거리는 정확하게 표현하고, 먼 지역 간의 대략적인 관계도 유지하려고 노력하는 것과 유사합니다.

이미지

  • 위 이미지는 UMAP이 고차원 데이터의 지역적 이웃 관계를 보존하면서, 전체적인 데이터 분포의 구조도 비교적 잘 유지하는 것을 개념적으로 나타냅니다.

4. 딥러닝 기반 기법: 비선형 특징 추출의 새로운 가능성

  • 딥러닝 기반 차원 축소는 신경망의 강력한 비선형 학습 능력을 활용하여 데이터의 복잡한 특징을 추출하고 저차원 표현을 학습합니다.

오토인코더 (Autoencoder)

수학적 기반

  • 오토인코더는 입력 xx를 잠재 벡터 z=fθ(x)z = f_\theta(x)로 인코딩하는 함수 fθf_\theta와, 잠재 벡터 zz를 다시 x^=gϕ(z)\hat{x} = g_\phi(z)로 디코딩하는 함수 gϕg_\phi로 구성된 신경망입니다.
  • 학습 목표는 재구성 오차 xx^2||x - \hat{x}||^2을 최소화하는 최적의 파라미터 θ\thetaϕ\phi를 찾는 것입니다.
  • 병목층의 출력 zz가 차원 축소된 표현이 됩니다.

직관적 해석

  • 오토인코더는 데이터를 압축하고 복원하는 과정을 통해 데이터의 가장 중요한 특징을 스스로 학습합니다.
  • 마치 파일을 압축했다가 다시 풀 때, 원본과 최대한 비슷하게 복원되도록 압축 방식을 배우는 것과 같습니다.
  • 병목층은 압축된 정보만을 담고 있으므로, 원본 데이터보다 훨씬 낮은 차원을 가집니다.

이미지




업로드중..

  • 위 이미지는 오토인코더의 기본적인 구조를 보여줍니다. 입력층에서 데이터를 받아 은닉층을 거치며 차원이 축소되고 (인코더), 다시 은닉층을 거쳐 출력층에서 원본 데이터를 재구성합니다 (디코더).
  • 병목층이 차원 축소된 표현을 나타냅니다.

결론

  • 차원 축소는 고차원 데이터의 복잡성을 해소하고, 숨겨진 패턴을 드러내는 강력한 도구입니다.
  • 선형 기법은 빠르고 해석 가능하지만 선형적인 관계만을 포착할 수 있으며, 비선형 기법은 복잡한 구조를 다룰 수 있지만 계산 비용이 높거나 전역 구조 보존에 어려움을 겪을 수 있습니다.
  • 딥러닝 기반 기법은 강력한 표현 학습 능력을 제공하지만 학습에 많은 데이터와 자원이 필요합니다.
  • 따라서 데이터의 특성, 분석 목표, 그리고 활용 가능한 자원을 종합적으로 고려하여 적절한 차원 축소 기법을 선택하는 것이 중요합니다.
profile
AI 공부합니다

0개의 댓글