[머신러닝알고리즘] 주성분분석(PCA)

주성분 분석(PCA)

PCA는 Principal Component Analysis의 약자로, 주성분 분석이라고도 부릅니다.

PCA는 지금까지 배운 알고리즘과는 전혀 다른 방식의 알고리즘입니다.

비지도 학습에 속하기 때문에 당연히 종속 변수는 존재하지 않고, 어떤 것을 예측하지도 분류하지도 않습니다.

PCA의 목적은 데이터의 차원을 축소하는 데 있습니다.

차원 축소를 간단히 말하면 변수의 개수를 줄이되, 가능한 그 특성을 보존해내는 기법입니다.

PCA는 기존의 변수 중 일부를 그대로 선택하는 방식이 아니라, 기존 변수들의 정보를 모두 반영하는 새로운 변수들을 만드는 방식으로 차원 축소를 합니다.

– 구분 : 비지도 학습

 

▼ TOP 10 선정 이유

PCA는 차원 축소 방법 중 가장 인기 있으며 구현하기 또한 쉬운 편입니다. 프로젝트 특성에 따라서 차원 축소가 필요하지 않은 경우도 많지만, 차원 축소를 시도해봄으로써 시각화 내지 모델링 효율성을 개선할 여지는 항상 있습니다. 따라서 알아두면 언젠가 유용하게 쓰게 될 알고리즘입니다.

▼ 예시 그래프

▼ 장점

  • 다차원을 2차원에 적합하도록 차원 축소하여 시각화에 유용합니다.
  • 변수 간의 높은 상관관계 문제를 해결해줍니다.

▼ 단점

  • 기존 변수가 아닌 새로운 변수를 사용하여 해석하는 데 어려움이 있습니다.
  • 차원이 축소됨에 따라 정보 손실이 불가피합니다.

▼ 유용한 곳

  • 다차원 변수들을 2차원 그래프로 표현하는 데 사용할 수 있습니다.
  • 변수가 너무 많아 모델 학습에 시간이 너무 오래 걸릴 때 (차원 축소를 진행하면 학습에 드는 시간을 줄일 수 있어) 유용합니다.
  • 오버피팅을 방지하는 용도로 사용할 수도 있습니다.

출처 : 확실히 알아두면 만사가 편해지는 머신러닝 10가지 알고리즘