IT Study/인공지능 관련

🤖 주성분 분석(PCA)를 활용한 차원 축소 기법의 이해

cs_bot 2025. 4. 8. 12:38

1. 차원 축소의 개념 및 필요성

  • 고차원 데이터는 연산량 증가, 시각화 한계, 과적합(overfitting) 문제 발생 가능
  • 데이터 분석의 효율성을 높이기 위해 주요 정보 손실 없이 차원을 줄이는 기법 필요
  • 차원 축소는 데이터의 본질적인 구조를 보존하면서도 데이터 크기, 연산 복잡도 감소 효과를 가짐
  • 주성분 분석(PCA)은 대표적인 선형 차원 축소 방법으로 널리 활용됨

2. PCA(주성분 분석)의 개념 및 정의

  • PCA는 고차원 공간의 데이터를 저차원 공간에 사영(projection)하여 데이터의 분산을 최대화하는 축을 찾는 방식
  • 통계학과 신호처리에서 사용되던 고전적인 방법으로, 데이터 간 상관관계를 제거하여 새로운 축으로 재구성함
  • 기존 변수들의 선형 조합을 통해 주성분(Principal Component) 생성
  • 각 주성분은 서로 직교(orthogonal)하며, 데이터 분산을 가장 잘 설명하는 방향부터 순차적으로 구성됨

3. PCA의 동작 절차 및 과정

데이터 정규화(Normalization)
  - 입력 데이터의 각 feature는 평균 0, 분산 1로 표준화 수행
  - 단위 차이로 인한 편향 제거 목적

공분산 행렬 계산(Covariance Matrix)
  - 데이터의 상관 관계를 파악하기 위해 공분산 행렬 도출
  - 공분산이 클수록 변수 간 강한 선형 관계 존재

고유값 분해(Eigen Decomposition)
  - 공분산 행렬을 고유값 분해하여 고유값과 고유벡터 추출
  - 고유값은 분산의 크기를, 고유벡터는 주성분의 방향을 나타냄

주성분 선택 및 차원 축소
  - 고유값이 큰 순서대로 주성분을 선택
  - 누적 설명 분산 비율(Cumulative Explained Variance)을 기준으로 보존할 차원 수 결정
  - 선택된 주성분으로 데이터를 선형 변환하여 새로운 좌표계로 매핑

차원 축소 결과 도출
  - 기존 데이터는 의미 있는 저차원 형태로 변환됨
  - 주성분 공간에서는 변수 간 상관성이 제거됨

4. 수학적 설명

  • 데이터 행렬 X가 (n × p)의 형태일 때,
      중심화(centered)된 X에 대해 공분산 행렬 S = (1/n) XᵀX 계산
  • 공분산 행렬 S의 고유값 분해: S = VΛVᵀ,
      여기서 V는 고유벡터 행렬, Λ는 고유값 대각행렬
  • 주성분 축으로 데이터를 사영하면: Z = XV_k,
      V_k는 상위 k개의 고유벡터로 구성된 행렬
  • Z는 k차원으로 축소된 표현이며, 전체 분산 중 가장 큰 비율을 유지함

5. PCA의 특징

  • 데이터 간 중복성 제거 및 정보 응축 가능
  • 데이터 시각화, 노이즈 제거, 전처리 단계에서 활용 용이
  • 선형 변환 기반이므로 비선형 구조 데이터에는 한계 존재

6. 활용 사례

  • 이미지 압축 및 복원 (예: 얼굴 인식 LFW, Eigenfaces 등)
  • 텍스트 분류 전 희소한 단어 벡터 차원 축소
  • 금융 데이터에서 주요 리스크 요인 도출
  • 유전체 분석 등 고차원 생명과학 데이터 정제

7. PCA의 장단점

  • 장점
      - 정보 손실 최소화하면서 데이터 차원 감소 가능
      - 변수 간 상관관계 제거 및 중복성 해소
      - 계산 방식이 단순하고 직관적이며 해석 용이

  • 단점
      - 선형 관계만 고려하므로 비선형 구조 반영 불가
      - 주성분의 의미 해석이 어려울 수 있음
      - 이상치(outlier)나 스케일에 민감

8. PCA와 관련된 확장 기법

  • Kernel PCA: 비선형 차원 축소를 위한 커널 트릭 적용
  • Sparse PCA: 희소성(sparsity)을 고려한 주성분 구성
  • Incremental PCA: 대용량 데이터에서 배치 단위 학습 가능
  • Factor Analysis와의 비교: PCA는 분산 최대화, FA는 잠재요인 추정이 목적