주성분 분석 (PCA)

1. 차원 축소 및 잡음 제거, 주성분 분석 (PCA)의 개요

  • 주성분 분석(PCA: Principal Component Analysis)

(1) 주성분 분석의 개념

개념도
3차원의 데이터셋을 분산값이 큰 영의 축(Axis)인 PC1을 식별하여PC2 축의 방향을 Projection하여 2차원으로 차원을 축소한 사례
개념고차원 공간의 표본들을 선형 연관성이 없는 저차원 공간(주성분)의 표본으로 변환하여 분석하는 알고리즘

(2) 주성분 분석의 목적

차원의 축소고차원의 특징벡터를 저차원의 특징 벡터로 축소
잡음의 제거인식에 필요한 핵심 요소만 추출하고 불필요 데이터는 제거
데이터 전처리분석 전 데이터 수집 단계에 사전 가공 작업(Data Cleaning)으로 활용
  • 공분산 행렬의 최대 고유벡터와 고유치를 추출, 고유벡터를 변환행렬(Linear Transform Matrix)로 사용하여 선형변환에 의해 특징벡터를 추출

 

2. 주성분 분석의 절차

  • 공분산 : x와 y의 공분산은 x, y의 흩어진 정도가 얼마나 서로 상관관계를 가지고 흩어졌는지를 나타냄. 서로 상관관계가 없을 경우 공분산은 0
  • 공분산 행렬 : 데이터 좌표성분들 사이의 공분산 값을 원소로 하는 행렬
#절차세부 활동 / 산출식
공분산 계산– 입력 데이터 X의 평균 μx와 공분산 Σx를 계산

(1은 모든 원소 값이 1인 n차원 열벡터)
고유벡터 계산고유치 분석을 통한 공분산 Σx의 고유치 행렬 Λ과 고유벡터 U을 계산
고유치 선택고유치 값이 큰 순서대로 m개의 고유치 {λ1, λ2, …, λm}를 선택
변환행렬 생성선택한 고유치에 대응하는 고유벡터를 열벡터로 가지는 변환행렬W생성
W = [u1, u2, …, um]
선형변환W에 의한 선형변환에 따라 특징데이터 Y 획득
Y = WTX
  • 변수 간의 인과관계를 분석, 축약, 분류하는 다변량 분석 기법은 다변량 회귀분석, 주성분 분석, 다차원 척도법이 존재하며, PCA는 변수 간 상관관계 분석, 변수 축약, 다중 공선성 문제를 해결

 

3. 다변량 분석기법 유형 및 PCA와 LDA 비교

(1) 다변량 분석기법의 유형

다변량 회귀분석주성분 분석다차원 척도법
– 변수 간 인과관계 분석
– 종속변수 2개 이상인 회귀 모델 분석
– 변수 간 상관관계 분석
– 선형결합 통한 변수 축약
다중 공선성 문제 해결
– 상관관계 기반 군집분석
– 개체 간 유사성 측정
– 저차원 공간을 표현

(2) PCA와 LDA 비교

PCA (Principal Component Analysis)LDA (Linear Discriminant Analysis)
차원감소를 위해 data의 분포에서 principal axis 위치 확인 후 axis 로 data 를 projection클래스의 정보를 보호 하면서 두 클래스를 포함하는 data 들을 가장 잘 감소시키는 axis를 탐색
  • 최근 데이터 분석이나 머신러닝 모델 개발에 따라 데이터의 차원 증가로 인해 발생하는 [차원의 저주]를 효율적으로 해결할 수 있어 필요성 증가

 
[차원의 저주]

배경데이터의 차원(dimensionality)이 증가할 수록 해당 공간의 크기(부피)가 기하급수적으로 증가하기 때문에 동일한 개수의 데이터 밀도는 차원이 증가할수록 급속도로 희박(sparse) 해짐
문제차원이 증가할수록 데이터의 분포 분석 모델추정에 필요한 샘플 데이터 개수가 기하급수적으로 증가하게 되므로 분석성능 저하

 
[참고]

  • 김성규, 주성분 분석에 기초한 다변량 공정능력지수(한국산업경영시스템학회, 2003)
  • 조주희, 주성분분석기법을 이용한 ECG와 PPG 생체신호의 개인인증 성능평가(충북대학교, 2018)

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^