728x90
SMALL

PCA 개념과 특성

🟦 PCA (주성분 분석) 

 

✅ 1. 개념

PCA는 고차원의 데이터를 저차원으로 축소하는 차원 축소 기법입니다. 데이터의 분산(정보량)이 가장 큰 방향을 주성분으로 찾아 새로운 축으로 데이터를 표현합니다.


✅ 2. 원리

  • 공분산 행렬을 계산하여 데이터가 가장 많이 퍼진 방향(분산이 큰 방향)을 찾음
  • 고유값 분해 또는 SVD(Singular Value Decomposition)를 사용하여 주성분 축을 구함

(고유값 분해에 대한 자세한 설명은 데이터 전처리 기법 -33에서 참조)

  • 데이터를 이 주성분 방향으로 투영하여 차원을 축소

✅ 3. 수식


✅ 4. 사용 시기

  • 변수 간 상관관계가 높을 때
  • 시각화를 위해 2D 또는 3D로 차원을 줄일 때
  • 노이즈 제거 및 데이터 압축이 필요할 때

5. 예시 코드 (Python)

from sklearn.decomposition
import PCA from sklearn.datasets
import load_iris
import matplotlib.pyplot as plt
# 데이터 로드
data = load_iris() X = data.data y = data.target
# PCA 적용
pca = PCA(n_components=2) X_pca = pca.fit_transform(X)
# 시각화
plt.scatter(X_pca[:, 0], X_pca[:, 1], c=y) plt.xlabel("PC1") plt.ylabel("PC2") plt.title("PCA of Iris Dataset") plt.show()
 
  • 결과

📊 1. 분석 방법 설명 (How the PCA Was Performed)

✅ 사용된 데이터

  • Iris Dataset: 꽃잎과 꽃받침의 길이/너비 (총 4개 변수)를 가진 150개의 샘플
  • 세 개의 품종(Setosa, Versicolor, Virginica)로 구성

✅ PCA 적용 절차

  1. 표준화(Standardization)
  • 각 특성의 평균을 0, 분산을 1로 맞춤
  • 이유: 스케일 차이로 인한 왜곡 방지

2. 공분산 행렬 계산

  • 변수 간 분산/상관관계를 수치화

3. 고유값 분해 (Eigendecomposition)

  • 공분산 행렬을 고유값/고유벡터로 분해
  • 고유값이 큰 방향(= 분산이 큰 축)을 찾아 정렬

4. 주성분 선택 및 투영

  • 가장 큰 분산을 설명하는 2개의 축(PC1, PC2)을 선택하여 데이터를 투영

5. 시각화

  • 각 점은 하나의 샘플이고, 색상은 품종을 구분

🧠 2. 그래프 해석 방법 (How to Interpret the Plot)

🟡 PC1과 PC2

    • PC1 (x축): 전체 데이터에서 가장 많은 분산을 설명하는 주성분 (정보량이 가장 큼)
    • PC2 (y축): 그다음으로 중요한 분산 방향 (PC1과 직교)

🟣 색상 구분

    • 3개의 색상 → 3개의 붓꽃 품종
    • 왼쪽 군집: Setosa (명확하게 구분됨)
    • 가운데와 오른쪽 군집: Versicolor vs Virginica (약간 겹침)

🔍 해석 포인트

    • Setosa는 PCA 공간에서도 완벽하게 분리 → 명확히 다른 특성
    • Versicolor vs Virginica는 일부 겹침 → 완전한 분리는 어려움
    • 전체적으로 PCA가 데이터를 잘 요약하고 구분해주고 있음

PCA 수행 절차

🎯 분석 요약

항목
설명
목적
4차원 데이터를 2차원으로 줄여 시각화
방법
표준화 → 공분산 행렬 → 고유값 분해 → 2개 주성분 선택
해석
세 품종 중 2개는 겹치지만, 전반적으로 잘 구분됨
장점
차원 축소로 데이터 구조 파악이 쉬움
주의
PCA는 선형 구조만 반영, 분류 목적이 아님

이 분석은 탐색적 데이터 분석(EDA) 이나 모델 전처리 단계에서 매우 유용합니다.


6. 장단점

장점

  • 차원 축소를 통해 시각화 및 연산 속도 향상
  • 데이터 압축
  • 잡음 감소 가능

단점

  • 해석이 어려운 주성분
  • 선형적 구조만 반영
  • 스케일링 민감

7. 주의사항

  • PCA 적용 전 표준화(Scaling) 필수
  • 누적 설명 분산(예: 95%)을 기준으로 주성분 수 결정
  • 데이터가 선형 구조일 때 효과적임

8. 분석 평가 방법

  • Explained Variance Ratio: 각 주성분이 설명하는 분산 비율
  • Scree Plot: 고유값 시각화하여 주요 축 결정
  • 재구성 오차 (Reconstruction Error)

9. 대체 기법

  • t-SNE: 비선형 차원 축소, 시각화에 강점
  • UMAP: 보존성과 성능에서 t-SNE보다 우수
  • Autoencoder: 신경망 기반 비선형 차원 축소
728x90
반응형
LIST

+ Recent posts