Phương sai của các đặc trưng PCA
Bộ dữ liệu cá có 6 chiều. Nhưng số chiều nội tại của nó là bao nhiêu? Hãy vẽ biểu đồ phương sai của các đặc trưng PCA để tìm câu trả lời. Như trước đây, samples là mảng 2D, trong đó mỗi hàng đại diện cho một con cá. Bạn cần chuẩn hóa (standardize) các đặc trưng trước.
Bài tập này là một phần của khóa học
Unsupervised Learning bằng Python
Hướng dẫn bài tập
- Tạo một instance
StandardScalerđặt tên làscaler. - Tạo một instance
PCAđặt tên làpca. - Dùng hàm
make_pipeline()để tạo pipeline nốiscalervàpca. - Dùng phương thức
.fit()củapipelineđể fit vào các mẫu cásamples. - Trích xuất số lượng thành phần được sử dụng bằng thuộc tính
.n_components_củapca. Đưa giá trị này vào hàmrange()và lưu kết quả vàofeatures. - Dùng hàm
plt.bar()để vẽ phương sai giải thích, vớifeaturestrên trục x vàpca.explained_variance_trên trục y.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Perform the necessary imports
from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler
from sklearn.pipeline import make_pipeline
import matplotlib.pyplot as plt
# Create scaler: scaler
scaler = ____
# Create a PCA instance: pca
pca = ____
# Create pipeline: pipeline
pipeline = ____
# Fit the pipeline to 'samples'
____
# Plot the explained variances
features = ____
plt.bar(____, ____)
plt.xlabel('PCA feature')
plt.ylabel('variance')
plt.xticks(features)
plt.show()