핵심 인사이트 (3줄 요약)

  1. 본질: 차원 축소(Dimensionality Reduction)는 고차원 데이터의 핵심 정보는 유지하면서 불필요한 차원을 제거하여, 차원의 저주(Curse of Dimensionality)를 극복하고 시각화·모델 성능을 개선하는 기법이다.
  2. 가치: PCA(Principal Component Analysis, 주성분 분석)는 분산 최대화 비지도 축소, LDA(Linear Discriminant Analysis, 선형 판별 분석)는 클래스 분리 극대화 지도 축소, t-SNE(t-Distributed Stochastic Neighbor Embedding)는 고차원 이웃 관계를 보존하는 비선형 시각화를 각각 제공한다.
  3. 판단 포인트: PCA는 전처리·압축 목적, LDA는 분류 전처리, t-SNE/UMAP은 탐색적 시각화 목적으로 선택해야 하며, t-SNE는 새 데이터 변환(out-of-sample)이 불가능하다는 제약이 있다.

Ⅰ. 개요 및 필요성

차원의 저주 (Curse of Dimensionality)

차원이 증가할수록 데이터 포인트 간 거리가 모두 비슷해지고, 데이터가 희소해져 모델 성능이 역설적으로 저하된다.

차원 수  │  단위 정육면체에서 전체 부피의 1% 커버하는 변 길이
─────────┼────────────────────────────────────────────────
    2    │   0.10  (10%)
   10    │   0.63  (63%)
  100    │   0.955 (95.5%)
 1000    │   0.995 (99.5%)

→ 고차원에서는 "근접 이웃"의 의미가 약해지고, KNN·클러스터링·회귀 모두 성능 저하

📢 섹션 요약 비유: 차원의 저주는 "도서관 책이 2D 평면에서 3D 공간, 그 다음 4D, 5D... 로 흩어질수록 찾고 싶은 책이 너무 멀어지는 것"이다. 차원 축소는 "다시 2D 선반으로 책을 정렬"하는 것이다.


Ⅱ. 아키텍처 및 핵심 원리

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

PCA는 비지도(Unsupervised) 선형 차원 축소다. 원본 데이터의 분산(Variance)이 가장 크게 보존되는 방향(주성분, PC)으로 새 축을 정의한다.

PCA 알고리즘 흐름:
────────────────────────────────────────────────────────
① 데이터 중심화 (평균 빼기, Mean Centering)
        ↓
② 공분산 행렬 계산 (Covariance Matrix)
        ↓
③ 고유값 분해 (Eigenvalue Decomposition) 또는 SVD
        ↓
④ 고유벡터(Eigenvector) = 주성분 방향 축
   고유값(Eigenvalue)    = 해당 축의 설명 분산량
        ↓
⑤ 설명 분산 누적 비율 확인 (Explained Variance Ratio)
   보통 PC들이 95% 이상 설명하는 수까지 선택
        ↓
⑥ 원본 데이터를 선택된 PC 공간으로 투영
────────────────────────────────────────────────────────

Scree Plot (스크리 플롯):
  설명 분산
    │
 80%│ ●
    │  ●
 40%│    ●
    │      ●──●──●──●
    └──────────────────
      PC1 PC2 PC3 PC4  (엘보우 이후 완만 → 거기서 자름)

2-2. LDA (Linear Discriminant Analysis, 선형 판별 분석)

LDA는 지도(Supervised) 선형 차원 축소다. 클래스 간 분산(Between-Class Variance)을 최대화하고 클래스 내 분산(Within-Class Variance)을 최소화하는 축을 찾는다.

LDA 목표:
         클래스 간 분산 (SB)
최대화: ─────────────────────
         클래스 내 분산 (SW)

PCA와의 차이:
┌─────────────────────────────────────────────────────┐
│ PCA: 레이블 무관, 전체 분산 최대화 (비지도)          │
│ LDA: 레이블 사용, 클래스 분리 최대화 (지도)          │
└─────────────────────────────────────────────────────┘

최대 축 수: min(클래스 수 - 1, 특성 수)
→ 클래스가 3개이면 최대 2개의 판별 축 가능

2-3. t-SNE (t-Distributed Stochastic Neighbor Embedding)

t-SNE는 비선형 비지도 시각화 전용 차원 축소다. 고차원에서의 이웃 확률 분포를 저차원(2D/3D)에서 재현한다.

t-SNE 핵심 아이디어:
────────────────────────────────────────────────────────
① 고차원: 데이터 포인트 간 유사도를 가우시안 확률로 계산
② 저차원: 유사도를 t-분포(꼬리 두터운 분포)로 표현
③ KL Divergence를 최소화하여 고·저차원 확률 분포 정렬
────────────────────────────────────────────────────────

t-분포를 쓰는 이유:
고차원→저차원 시 "군집 간 거리가 찌그러지는 문제(Crowding Problem)"를
t-분포의 긴 꼬리(Heavy Tail)가 완화한다.

2-4. 방법별 종합 비교

구분PCALDAt-SNEUMAP
유형비지도·선형지도·선형비지도·비선형비지도·비선형
목적분산 최대화클래스 분리군집 시각화구조 보존 시각화
출력 차원자유클래스수-12D/3D 주로자유
신규 데이터변환 가능변환 가능불가가능 (近似)
계산 복잡도O(min(n,d)³)O(nd²)O(n²)O(n log n)
해석 가능성중간높음낮음낮음

📢 섹션 요약 비유: PCA는 "그림자로 3D 물체를 가장 잘 표현하는 조명 각도 찾기", LDA는 "두 그룹이 가장 잘 구분되는 조명 각도 찾기", t-SNE는 "가까운 것끼리 뭉치도록 데이터를 손으로 배치하는 것"이다.


Ⅲ. 비교 및 연결

3-1. 언제 어떤 차원 축소를 쓰는가?

목적별 선택 기준
────────────────────────────────────────────────────────
고차원 전처리 → 모델 성능 개선    : PCA
  (선형 관계 가정, 빠른 변환 필요)

분류 전 특성 변환                 : LDA
  (클래스 레이블 있고 선형 분리 가정)

데이터 탐색·시각화                : t-SNE 또는 UMAP
  (군집 구조 발견, 이상점 탐지)

대용량 데이터 + 빠른 속도         : UMAP
  (t-SNE보다 10~100× 빠름, 전역 구조 보존)
────────────────────────────────────────────────────────

3-2. PCA와 SVD의 관계

PCA는 내부적으로 SVD(Singular Value Decomposition, 특이값 분해)를 이용한다.

데이터 행렬 X = U × Σ × Vᵀ

U: 왼쪽 특이벡터 (데이터 포인트의 좌표)
Σ: 특이값 (분산 크기에 비례)
Vᵀ: 오른쪽 특이벡터 = PCA의 주성분 축

PCA 주성분 = V의 열벡터
분산 = (특이값)² / (n-1)

3-3. t-SNE 하이퍼파라미터 실무

파라미터설명권장값
perplexity이웃 수 영향 (작으면 국소, 크면 전역)5~50
learning_rate최적화 스텝 크기100~1000
n_iter최적화 반복 수≥ 1000
random_state재현성 설정고정값

📢 섹션 요약 비유: PCA와 SVD의 관계는 "산을 보는 방법"이다. PCA는 "가장 산이 잘 보이는 각도 탐색", SVD는 그 각도를 수학적으로 분해하는 "도구"다.


Ⅳ. 실무 적용 및 기술사 판단

4-1. 이미지 압축 시나리오 (PCA 적용)

[입력] 100×100 픽셀 얼굴 이미지 = 10,000 차원

[PCA 적용]
① 10,000 차원 → PCA → 상위 50개 주성분 선택
② 설명 분산: PC1~PC50 = 95.2% 설명
③ 압축 비율: 10,000 → 50 = 200배 압축

[활용]
- Eigenface (고유얼굴): 얼굴 인식의 고전 방법
- 차원 축소 후 SVM·로지스틱 회귀 성능 향상

4-2. 고객 세그멘테이션 시각화 (t-SNE 적용)

[입력] 고객 행동 특성 50개 차원 (클릭·구매·방문 패턴)

[t-SNE 적용]
50차원 → t-SNE → 2차원 시각화

[결과]
2D 산점도에서 5개 군집 발견:
  ● 충성 고객 군집
  ● 가격 민감 군집
  ● 휴면 고객 군집
  ● 신규 고객 군집
  ● 고가치 VIP 군집

→ 각 군집에 맞는 맞춤형 마케팅 전략 수립

📢 섹션 요약 비유: t-SNE로 고객을 시각화하는 것은 "수백 가지 특성의 고객들을 2D 지도에 비슷한 고객끼리 가깝게 배치하는 것"이다. 지도를 보면 어느 고객 동네가 어디 있는지 한눈에 파악된다.


Ⅴ. 기대효과 및 결론

차원 축소는 현대 데이터 분석 파이프라인에서 전처리·탐색·모델링 세 단계 모두에 필수적인 도구다.

선택 가이드 요약

상황권장 방법
빠른 선형 전처리PCA
분류 전처리 (레이블 있음)LDA
소규모 데이터 군집 시각화t-SNE
대규모 데이터 시각화·전처리UMAP
비지도 탐색 + 새 데이터 변환UMAP

기술사 시험에서 차원 축소는 "PCA(분산 최대화)·LDA(클래스 분리)·t-SNE(이웃 보존)의 목적 차이 + 차원의 저주 해결 맥락" 을 중심으로 서술해야 한다.

📢 섹션 요약 비유: 차원 축소는 "수백 개 특성으로 정의된 사람을 핵심 키워드 3개로 요약하는 것"이다. 정보 손실은 있지만, 핵심은 유지하고 훨씬 다루기 쉬워진다.


📌 관련 개념 맵

관계개념설명
핵심 기법PCA (주성분 분석)비지도·선형·분산 최대화
핵심 기법LDA (선형 판별 분석)지도·선형·클래스 분리
핵심 기법t-SNE비선형·시각화 전용
비교UMAP빠른 비선형 시각화
수학 기반SVD (특이값 분해)PCA 내부 계산 기반
문제Curse of Dimensionality (차원의 저주)고차원 희소성 문제
파라미터Explained Variance RatioPC 선택 기준
파라미터Perplexity (퍼플렉서티)t-SNE 이웃 영향 범위
응용EigenfacePCA 기반 얼굴 인식
전처리 연계Feature Engineering (특성 공학)축소 전 특성 변환

👶 어린이를 위한 3줄 비유 설명

  1. 수백 가지 정보로 설명된 그림을 딱 2~3가지 핵심 특징으로 요약하는 것이 차원 축소이고, PCA는 "가장 많은 정보를 유지하는 방향으로 그림자를 만드는 것"이다.

📈 관련 키워드 및 발전 흐름도

고차원 데이터 (차원의 저주)
    │
    ▼
차원 축소
    ├─► PCA: 분산 최대화 선형 투영 (비지도)
    ├─► LDA: 클래스 분리 최대화 투영 (지도)
    └─► t-SNE / UMAP: 비선형 시각화 (2D/3D)
    │
    ▼
응용: 시각화 · 노이즈 제거 · 피처 압축
  1. LDA는 "고양이와 개를 가장 잘 구분하는 방향으로 그림자를 만드는 것"으로, 처음부터 어떤 동물인지 알고 시작한다.
  2. t-SNE는 "비슷한 친구끼리 가깝게, 다른 친구끼리 멀게 자리를 배치하는 것"인데, 2D 지도로 만들어주기 때문에 눈으로 군집을 바로 볼 수 있다.