첫 번째 주성분
데이터의 첫 번째 주성분은 데이터가 가장 많이 변하는 방향이에요. 이 연습에서는 PCA를 사용해 곡물 샘플의 길이와 너비 측정값에서 첫 번째 주성분을 찾고, 산점도에 화살표로 표시해 보세요.
배열 grains에는 곡물 샘플의 길이와 너비가 들어 있어요. PyPlot(plt)과 PCA는 이미 임포트되어 있습니다.
이 연습은 강의의 일부입니다
Python으로 배우는 Unsupervised Learning
연습 안내
- 곡물 측정값으로 산점도를 만드세요. 이 단계는 이미 완료되어 있어요.
model이라는 이름의PCA인스턴스를 생성하세요.grains데이터에 모델을 학습(fit)하세요.model의.mean_속성을 사용해 데이터 평균의 좌표를 추출하세요..components_[0,:]속성으로model의 첫 번째 주성분을 가져오세요.plt.arrow()함수를 사용해 산점도에 첫 번째 주성분을 화살표로 그리세요. 앞의 두 인수인mean[0]과mean[1]을 지정해야 합니다.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Make a scatter plot of the untransformed points
plt.scatter(grains[:,0], grains[:,1])
# Create a PCA instance: model
model = ____
# Fit model to points
____
# Get the mean of the grain samples: mean
mean = ____
# Get the first principal component: first_pc
first_pc = ____
# Plot first_pc as an arrow, starting at mean
plt.arrow(____, ____, first_pc[0], first_pc[1], color='red', width=0.01)
# Keep axes on same scale
plt.axis('equal')
plt.show()