開始使用免費開始

PCA 特徵的變異數

這個魚類資料集有 6 維。不過它的「內在維度」是多少?請繪製 PCA 特徵的變異數圖來找出答案。和之前一樣,samples 是一個 2D 陣列,每一列代表一條魚。你需要先對特徵做標準化。

本練習屬於課程

Unsupervised Learning in Python

檢視課程

練習說明

  • 建立 StandardScaler 的實例,命名為 scaler
  • 建立 PCA 的實例,命名為 pca
  • 使用 make_pipeline() 建立一個將 scalerpca 串接起來的 pipeline。
  • 使用 pipeline.fit() 方法,將其擬合到魚類樣本 samples
  • 透過 pca.n_components_ 屬性取得使用的元件數,將其放入 range(),並將結果儲存為 features
  • 使用 plt.bar() 繪製解釋變異數,x 軸為 features,y 軸為 pca.explained_variance_

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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()
編輯並執行程式碼