1. 차원이 크면 생기는 문제점
차원이 커질수록
(1) 데이터 포인트들 간 거리가 크게 증가
(2) 데이터가 희소화됨 (sparse)
데이터 포인트들 간 거리에 기반한 머신러닝 알고리즘이 무력화됨 +
그리고 피처가 많을 경우 개별 피처간에 상관관계가 높아 선형 회귀 같은 모델에서는 다중 공선성 모델로 예측 성능이 저하될 가능성이 높음
2. 차원을 축소하면 장점
- 학습 데이터 크기를 줄여서 training 시간을 절약
- 불필요한 피처들을 줄여서 모델 성능 향상에 기여할 수 있음 (항상 향상되는건 아님)
- 다차원의 데이터를 3차원 이하의 차원 축소를 하면 시각적으로 쉽게 데이터 패턴을 인지할 수 있음
3. 차원 축소의 목표
원본 데이터의 정보를 최대한 유지하면서
차원을 축소하기
4. 차원 축소
(1) Feature Selection
특정 피처에 종속성이 강한 불필요한 피처는 아예 제거하기.
데이터 특징을 잘 나타내는 피처만 선택하는 것!
(2) Feature Extraction
피처 추출은 기존 피처를 저차원의 중요 피처로 압축해서 추출하는 것
새롭게 추출된 중요한 피처는 기존의 피처를 반영해 압축된 것이지만 새로운 피처로 추출되는 것
** 데이터를 더 잘 설명할 수 있는 잠재적 요소 (Latent feature)를 추출할 수 있음 **
5. 차원 축소 알고리즘 - PCA
PCA : Principal Component Analysis
- 원본 데이터 : 고차원 ----> 저차원의 부분 공간으로 투영해서 데이터를 축소하는 분석 방법
- 원본 데이터가 가지는 데이터 variance를 가장 중요한 정보로 간주하고 이 variance가 가장 큰 데이터를 축으로 투영
'Study > 머신러닝' 카테고리의 다른 글
[시계열] 스무딩 기법들 (0) | 2024.06.29 |
---|---|
WandB 사용법 (0) | 2024.03.02 |
앙상블 학습 - Bagging (0) | 2023.09.25 |
Decision Tree : 가지치기 (pruning)에 대하여 (0) | 2023.09.15 |
Decision Tree : scikit learn의 feature_importances_는 어떻게 계산된 것일까? + Permutation Importance (0) | 2023.09.08 |