2024년 12월 2일
주성분 분석 (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)