練習標準化
在未知的分佈上盲目使用 KNN 風險很高。當各特徵的分佈量尺不同時,效能會大幅下降。未經縮放的特徵會扭曲距離計算,進而得到不合理的異常分數。
常見的對策是使用標準化。做法是從特徵中扣除其平均值,並除以標準差。如此可讓該特徵的平均為 0、變異數為 1。
請在已為你載入的 females 資料集上練習標準化。
本練習屬於課程
Python 中的異常偵測
練習說明
- 建立
StandardScaler()的實例並儲存為ss。 - 將特徵與目標分別擷取為
X與y。目標為weightkg欄位。 - 對 X 擬合
StandardScaler(),並同時進行轉換。 - 重複上述流程,但在
X的 DataFrame 上保留欄位名稱。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
from sklearn.preprocessing import StandardScaler
# Initialize a StandardScaler
ss = ____
# Extract feature and target arrays
X = ____
y = ____
# Fit/transform X
X_transformed = ____
# Fit/transform X but preserve the column names
X.____ = ____