피드로 돌아가기
Dev.toAI/ML
원문 읽기
SVD 기반 Factor Analysis로 추상적 PCA 차원을 해석 가능한 지표로 전환
Principal Components in TypeScript (Part 4)
AI 요약
Context
표준 PCA는 데이터의 차원을 축소하지만 결과물인 Eigenvector가 추상적 수학 객체로 제공되어 실제 도메인 의미를 해석하기 어려움. 단순한 차원 축소를 넘어 데이터 변수 간의 상관관계를 통해 잠재적 요인(Latent Factor)에 구체적인 이름을 부여할 수 있는 해석 가능성(Interpretability) 확보가 필요함.
Technical Solution
- Z-score 기반의 Data Standardization을 통한 변수별 단위 차이 및 Scale Bias 제거
- SVD(Singular Value Decomposition)를 활용하여 데이터 행렬을 분해하고 Factor Score(standardized · V) 산출
- 각 원본 변수와 Factor Score 간의 Pearson Correlation을 계산하여 Loadings 행렬을 생성함으로써 변수-요인 간 연관성 정량화
- Loadings의 합산 부호에 따른 Sign-flip 로직을 적용하여 실행 시마다 결과가 변하는 Sign Consistency 문제 해결
- 단순 Variance 분해에서 벗어나 Shared Variance를 모델링하는 Factor Analysis 접근법을 통해 -1에서 1 사이의 해석 가능한 상관계수 도출
실천 포인트
- PCA 결과의 해석이 어려울 경우 Eigenvector를 직접 사용하지 말고 Factor Score와의 상관관계를 분석할 것 - 다양한 단위가 섞인 데이터셋 처리 시 SVD 적용 전 반드시 Standardization 단계 포함 여부를 확인할 것 - 수치적 안정성과 일관성을 위해 결과 행렬의 부호를 정규화하는 Sign-flip 프로세스를 구현할 것