🚀 주성분분석(Principal Component Analysis, PCA)
✅️ 차원축소의 목적
- 여러 변수들을 소수의 주성분으로 추소하여 데이터를 쉽게 이해 및 관리
- 주성분분석을 통해 차원을 축소하여 연산속도 개선
- 회귀분석에서 다중공선성 최소화 등
✅️ 주성분분석을 이해하기 위한 수학적 개념
주요 개념 | 설명 |
공분산 (Covariance) |
- 2개의 연속형 변수의 상관 정도(선형관계)를 나타내는 값 - 원 데이터의 분산에 대한 정보 저장 |
공분산행렬 (Covariance Matrix) |
- 변수들 사이의 공분산을 행렬로 나타낸 값 - 정방행렬(Square Matrix) - 대칭행렬(Symmetric Matrix): 전치(Transpose)를 시켰을 때 동일한 행렬 - 데이터의 구조적 의미: 각 데이터의 변동이 얼마나 닮았나를 확인 |
고유벡터 (Eigen Vectors) |
- 공분산행렬 A에 의해 선형변환(Linear Transformation)되는 수많은 벡터들 중에 변환되기 전과 변환 후의 방향이 똑같은 벡터 - 선형변환에 의한 변환 결과가 자기 자신의 상수배수가 되는 0이 아닌 벡터 |
고유값 (Eigen Values) |
- 변환 전과 후의 길이 변화 비율 - 고유벡터에 의해 변환되는 스케일 |
새로운 차원의 데이터 | - 원데이터에 고유벡터를 내적 연산한 값(차원축소된 값) |
✅️ 주성분분석 절차
구분 | 절차 |
Step 1 | 평균과 편차를 구하고 공분산행렬 계산 |
Step 2 | 고유분해를 이용해 고유값과 고유벡터 계산 |
Step 3 | 고유값이 큰 순서대로 나열 |
Step 4 | 지정된 최소 분산 크기 이상을 설명하도록 n번째 고유벡터 선택 |
Step 5 | 기존 데이터값에 고유벡터를 내적하여 새로운 차원의 값 생성 |
✅️ 주성분의 결정 기준
구분 | 설명 |
고유값 기준(Eigenvalue Criterion)과 누적기여율(Cumulative Proportion) |
![]() <고유값 기준> - 고유값이 1이상이거나 1에 가까운 주성분만 선택(주성분이 설명하는 분산의 양 - 위 사례에서 PC1이 2.9381이기 때문에 PC1 선택(단 PC2도 1에 가깝지 때문에 PC2까지 선택) <누적기여율> - 주성분분석 결과 누적기여율이 85% 이상에 해당하는 주성분의 수 결정 - 위 사례에서는 PC2: 95.8%, PC3: 99.48%이므로 2개의 주성분 선정 |
스크리그래프(ScreePlot) | - 수평축에 주성분을 높고 수직축에 해당 주성분에 대응하는 고유값을 연결한 차트![]() - 그래프가 완만해지는 부분 이전의 주성분 선택 - 위 사례에서 PC3까지 3개의 주성분 선정 |
🚀 요인분석(Factor Analysis, FA)
✅️ 요인분석의 목적
- 변수들이 하나의 요인으로 묶여짐으로써 적은 수의 요인으로 축소
- 요인에 포함되지 않거나 포함되더라도 중요도가 낮은 변수 제거
- 관련된 변수들이 묶여져 요인을 이루고 이들 요인들은 상호 독립적인 특성 파악
- 측정항목의 타당성(Validity)을 평가
✅️ 요인분석 개념
구분 | 설명 |
요인(Factor) | - 상관계수가 높은 변수들을 포함해 새롭게 생성한 변수 집단 |
요인적재값 (Factor Loading) |
- 변수와 해당 요인 간의 상관계수 - 요인적재값의 제곱은 해당 변수가 요인에 의해 설명되는 분산의 비율을 의미 |
요인행렬 (Factor Matrix) |
- 요인들에 대한 모든 변수의 요인적재값을 모은 행렬 |
고유값 (Eigen Value) |
- 각 요인에 대한 모든 변수들의 요인적재값 제곱의 합 - 해당 요인이 설명할 수 있는 변수들의 분산 총합으로, 변수 속 정보(분산)가 어떤 요인에 의해 어느 정도 설명될 수 있는지를 나타내는 비율 |
공통성 (Communality) |
- 여러 요인이 설명할 수 있는 한 변수의 분산의 양을 백분율로 나타낸 것 - 한 변수의 공통성은 추출된 요인들이 그 변수의 정보(분산)을 얼마만큼 설명할 수 있는지를 의미하며, 0과 1사이의 값을 가짐 |
📌 주성분분석과 요인분석의 차이 비교
구분 | 주성분분석 | 요인분석 |
공통점 | 변수 축소 기능, 데이터 패턴 탐색 용이, 타 분석을 위한 사전 분석 역할 수행 | |
원리 | 변수의 전체 분산을 토대로 요인을 추출 (원 변수들의 선형 결합으로 만들어짐) |
변수 간의 공통 분산만(공분산)을 토대로 요인을 추출 그룹 내 변수들 간에는 상관계수가 높고 다른 그룹 변수 간에는 상관관계가 낮음 |
목적 | 변수들의 변동을 설명 | 여러 변수의 공분산 구조의 의미를 밝힘 |
변수 개수 | 원 변수를 1~2개로 축약 | 서로 상관성을 갖는 변수들의 군집의 수만큼 축약 |
🚀 t-SNE(t-Distributed Stochastic Neighbot Embedding)
✅️ t-SNE의 목적
- 고차원 데이터를 저차원으로 축소하여 시각적으로 표현하는 데 사용
- 데이터의 군집(클러스터) 구조를 유지하며, 비선형적인 차원 축소 수행
- 지도학습이 아닌 비지도 학습 방식으로 데이터 패턴을 분석
✅️ t-SNE 특징
- 데이터 포인트 간의 상대적 거리(유사성)을 유지하지만, 전체적인 전역 구조(global structure) 표현에는 약함
- 데이터가 복잡할수록 해석이 어려워질 수 있음
- 고차원 공간의 데이터 밀도를 고려하여 시각적으로 의미 있는 군집을 표현
✅️ t-SNE 절차
단계 | 설명 |
Step 1 | 고차원 데이터에서 두 점 간 유사도를 확률 분포로 변환 |
Step 2 | 저차원 공간에서 유사한 확률 분포를 생성 |
Step 3 | 두 확률 분포 간 차이를 최소화하는 방향으로 점들의 위치를 조정 |
Step 4 | 저차원 공간에서 시각적으로 클러스터를 분석 |
🚀 다차원척도법(Multidimensional Scaling, MDS)
✅️ MDS의 목적
- 고차원 데이터를 저차원으로 변환하여 데이터 간 거리를 보존하는 차원 축소 기법
- 데이터 간 유사성을 측정하여 2D 또는 3D 공간에서 시각화 가능
- 선형 및 비선형 차원 축소 방식으로 활용
✅️ MDS 특징
- 전체적인 전역 구조(global structure)를 보존하는 데 강함
- 차원 축소 후에도 원본 데이터 간 거리 관계를 최대한 유지하려 함
- 데이터가 많아질수록 연산 비용이 커질 수 있음
✅️ MDS 절차
단계 | 설명 |
Step 1 | 데이터 간 거리 행렬 계산 |
Step 2 | 거리 행렬을 기반으로 좌표를 최적화하여 저차원 임베딩 생성 |
Step 3 | 스트레스 함수 값을 최소화하는 방식으로 반복 학습 |
Step 4 | 최적화된 좌표를 통해 데이터 시각화 수행 |
📚 차원 축소 기법 비교
기법 | 방식 | 전역 구조 유지 | 지역 구조 유지 | 비선형성 |
PCA | 선형 변환 | ✅ 강함 | ❌ 약함 | ❌ 없음 |
FA | 선형 변환 | ✅ 강함 | ❌ 약함 | ❌ 없음 |
t-SNE | 확률 기반 | ❌ 약함 | ✅ 강함 | ✅ 강함 |
MDS | 거리 기반 | ✅ 강함 | ✅ 강함 | ✅ 강함 |
'빅데이터분석기사' 카테고리의 다른 글
기울기 소멸 문제(Vanishing Gradient Problem) 및 해결 방법 (0) | 2025.04.02 |
---|---|
인공신경망 활성화 함수(Active Function) 종류 (0) | 2025.04.02 |
딥러닝(Deep Learning)의 종류 (0) | 2025.04.01 |
[빅데이터분석기사 필기] 2~8회 기출 정리 (0) | 2025.03.26 |
[빅데이터분석기사 필기] 2회 기출 문제 정리 (0) | 2025.03.25 |