Blog/PCA와 차원 축소

Model Lab

PCA와 차원 축소

차원은 줄이고, 핵심 정보는 유지하기

SK

Skari Team

Skari

2026년 7월·8분

주성분분석

PCA는 분산이 가장 큰 축을 찾습니다 — 긴 화살표(PC1)가 퍼짐의 대부분을 담습니다.

PC1PC2

변수 간 상관관계가 높으면 서로 비슷한 정보를 반복해서 담게 됩니다. 주성분분석은 위 화살표처럼 분산이 가장 큰 방향을 가리키는 새로운 축, 즉 주성분을 찾습니다. 상위 몇 개의 주성분만으로도 대부분의 정보를 설명할 수 있습니다.

Note

PCA는 원래 변수를 제거하는 것이 아니라, 각 성분이 설명하는 분산 순으로 데이터를 새로운 좌표축으로 변환합니다. 그 덕분에 상위 몇 개 성분만 남길 수 있습니다.

동작 방식

  • 분산이 최대인 방향을 찾음 — 그것이 PC1
  • 그것과 직각인 다음 방향을 찾음 — PC2, 이런 식으로
  • 각 성분이 전체 분산의 일부를 설명
  • 예컨대 분산의 90%를 담을 만큼 성분 유지

성분은 설명력 순으로 정렬되어 있어, 앞쪽 몇 개가 유지할 주성분입니다.

설명된 분산

핵심 출력은 각 성분이 설명하는 분산의 양입니다. 누적 비율을 그리면 대개 처음에는 크게 증가하다가 이후 증가폭이 줄어드는데, 그 "엘보우 지점"이 몇 개면 충분한지 알려줍니다.

Tip

성분 수는 미리 정한 고정 개수가 아니라, 필요한 누적 설명 분산 — 흔히 90–95% — 으로 고르세요.

항상 스케일링 먼저

PCA는 분산이 큰 방향을 기준으로 하므로, 큰 단위로 측정된 변수는 분산이 과도하게 반영될 수 있습니다. 모든 특성을 먼저 표준화하지 않으면, 성분이 데이터의 실제 패턴보다 변수의 단위 영향을 더 크게 받습니다.

Watch out

스케일링하지 않은 데이터에 PCA를 적용하는 것이 흔한 실수입니다 — 성분 방향이 실제 변동이 아니라 단위 선택에 좌우됩니다. 특성을 먼저 표준화(z-점수)하세요.

언제 PCA를 쓰나

  • 상관된 특성이 너무 많아 모델이 느리거나 불안정할 때
  • 고차원 데이터를 2D나 3D로 시각화할 때
  • 저분산 성분을 버려 불필요한 정보를 줄일 때

고려해야 할 점: 새 성분은 원래 변수의 조합이라, 원래 변수보다 해석하기 어렵습니다.

SKARI 워크플로의 PCA

SKARI 데이터 편집기가 특성을 표준화하고, Model Lab이 차원 축소를 전처리 단계로 적용합니다. 그래서 모델에 차원이 축소된 데이터를 넣고, 그 뒤의 설명된 분산을 확인할 수 있습니다.

  • 축소 전 데이터 편집기에서의 표준화
  • 모델링 단계로서의 차원 축소
  • 몇 개 성분을 남길지 고르는 설명 분산 뷰

Takeaway

스케일링과 축소가 하나의 과정으로 이어져, PCA가 변수의 단위보다 데이터의 구조를 반영합니다.

자주 묻는 질문

성분을 몇 개 남겨야 하나요?

목표 누적 분산에 도달할 만큼 남기면 됩니다. 흔히 90~95%이며, 곡선의 엘보우 지점이 좋은 기준이 됩니다.

PCA가 정확도를 높이나요?

때때로 — 잡음과 불안정을 줄일 수 있지만 유용한 신호를 버릴 수도 있습니다. 적용 전후로 검증하세요.

PCA가 유일한 선택인가요?

아니요 — 시각화엔 t-SNE와 UMAP이 낫지만, 압축엔 PCA가 빠른 선형 기본값으로 남습니다.

결론

PCA는 상관관계가 높은 변수를 분산이 큰 소수의 방향으로 압축합니다. 먼저 스케일링하고, 필요한 정보를 유지할 만큼 성분을 남기면, 원래 데이터의 핵심 정보를 유지하는 더 작고 빠른 데이터셋을 얻습니다.

Takeaway

차원은 줄이고 핵심 정보는 유지합니다. 먼저 스케일링하고, 몇 개를 남길지는 설명된 분산으로 정하면 됩니다.

데이터 정규화

PCA가 기대는 스케일링

완벽한 군집분석 가이드

전처리 단계로서의 PCA

과적합과 정규화

특성 과다에 맞서는 또 다른 방법