55. ch07. sklearn - 비지도학습 - 01. 비지도학습이란 - 57. ch07. sklearn - 비지도학습 - 03. 차원축소 - PCA
55. ch07. sklearn - 비지도학습 - 01. 비지도학습이란
목표치가 없음.
차원 축소: PCA, LDA, SVD
군집화: KMeans Clustering, DBSCAN
군집화 평가
56. ch07. sklearn - 비지도학습 - 02. 차원축소란
feature의 갯수를 줄이는 것을 뛰어 넘어, 특징을 추출
from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
from sklearn import datasets
import pandas as pd
iris = datasets.load_iris()
data = iris['data']
data[:5]
df = pd.DataFrame(data, columns=iris['feature_names'])
df.head()
df['target'] = iris['target']
df.head()
57. ch07. sklearn - 비지도학습 - 03. 차원축소 - PCA
분산(variance)을 최대한 보존
components에 1보다 작은 값을 넣으면, 분산을 기준으로 차원 축소
components에 1보다 큰 값을 넣으면, 해당 값을 기준으로 feature를 축소
from sklearn.decomposition import PCA
pca = PCA(n_components=2)
data_scaled = StandardScaler().fit_transform(df.loc[:, 'sepal length (cm)' : 'petal width (cm)'])
pca_data = pca.fit_transform(data_scaled)
data_scaled[:5]
pca_data[:5]
import matplotlib.pyplot as plt
from matplotlib import cm
import seaborn as sns
%matplotlib inline
plt.scatter(pca_data[:, 0], pca_data[:, 1], c=df['target'])
pca = PCA(n_components=0.99)
pca_data = pca.fit_transform(data_scaled)
pca_data[:5]
패스트캠퍼스 데이터분석 강의 링크
bit.ly/3imy2uN