3.2.3 주성분 분석(PCA)
PCA란?
고차원 데이터를 저차원(차원 축소) 데이터로 축소시키는 알고리즘
PCA를 사용하는 이유와 적용 환경
사용하는 이유: 주어진 데이터의 간소화(변수가 많은 고차원 데이터의 경우, 중요하지 않은 변수로 처리해야 할 데이터 양이 많아지고 성능이 나빠지는 경향 有
→ 해결방법 : 고차원 데이터를 저차원으로 축소시켜, 데이터가 가진 대표 특성만 추출
→ 효과 : 성능 향상, 작업은 좀 더 간편해짐
적용 환경 : 현재 데이터 특성(변수)가 너무 많을 땐, 데이터를 하나의 plot에 시각화해서 보기 어렵기 때문에 ,특성 p를 두 세개 정도로 압축해서 데이터를 시각화하고 싶을 때 유용
차원 축소 방법
① 데이터들의 분포 특성을 잘 설명하는 벡터를 두 개 선택
다음 그림의 벡터 e1과 e2는 데이터 분포를 잘 설명함(각 벡터의 방향과 크기를 알면 데이터 분포 형태를 알 수 있음)
② 벡터 두 개를 위한 적정한 가중치를 찾을 때까지 학습을 진행
즉, PCA란 데이터 하나하나에 대한 성분 분석(X)
여러 데이터가 모여 하나의 분포를 이룰 때, 이 분포의 주성분을 분석하는 방법(O)
//분포의 주성분 : 전체 데이터(독립 변수들)의 분산을 가장 잘 설명하는 성분(전체 독립변수가 네 개 있는데, 두 개의 변수로도 전체 데이터에 대한 분산을 충분히 설명할 수 있다면, 두 개의 변수만 사용하겠단 의미), 주성분(변환된 데이터) ≠ 원래 데이터
예제 - 데이터를 정확히 클러스터링하기
(밀도 기반 군집 분석을 이용한 클러스터링, PCA를 이용한 시각화)
'Etc > Deep Learning' 카테고리의 다른 글
4장 딥러닝(1) - 딥러닝 출현(퍼셉트론), 구조, 용어(수정, 보완必) (0) | 2021.08.04 |
---|---|
4장 딥러닝 - 딥러닝 학습 | 딥러닝의 문제점, 해결 방안 | 딥러닝 이점 + α 옵티마이저 (0) | 2021.07.30 |
3장(3) 실습 - 로지스틱 회귀 | 선형 회귀 (figure | enumerate | zip | subplot | np.reshape | digits | 혼동행렬 시각화 | train_test_split | y_pred) (0) | 2021.07.25 |
3장 머신러닝 - 비지도 학습(1) : K-평균 군집화, 밀도 기반 군집 분석 (0) | 2021.07.25 |
머신러닝 핵심 알고리즘(3) - 지도학습(로지스틱 회귀와 선형 회귀) (0) | 2021.07.21 |