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

+ Recent posts