1. 데이터를 같은 범위로 rescaling한다.
<사용 라이브러리>
- from sklearn.preprocessing import StandardScaler
x_std = StandardScaler().fit_transform(X)
2 데이터의 상관행렬을 구한다.
<사용 라이브러리>
- import numpy as np
features = x_std.T
covariance_matrix = np.cov(features)
3. 고유벡터와 고유값을 구해서 가장큰 고유값을 가진 고유벡터를 구한다.
<사용 함수>
eig_vals, eig_vecs = np.linalg.eig(covariance_matrix)
(이 고유벡터를 사용했을때의 데이터 유실정도)
eig_vals[0] / sum(eig_vals)
4. 현재 x값을 eig_vecs에 정사영 시킨다.
projected_X = x_std.dot(eig_vecs.T[0])
'머신러닝 > 스터디 정리' 카테고리의 다른 글
용어정리 1 (0) | 2019.02.09 |
---|---|
Activation Function (0) | 2018.08.26 |
numpy 간단한 선형회귀 예제 (0) | 2018.08.18 |
numpy 연산2 (0) | 2018.08.18 |
numpy 연산 (0) | 2018.08.18 |