年齡 0-100、收入 0-百萬,靠距離的演算法會被大數值主導。
縮放把所有欄位調到差不多尺度,年齡才有發言權。
如果一欄是「年齡(0~100)」、一欄是「收入(0~1,000,000)」,很多演算法(尤其靠距離的,如 KNN、SVM)會被數值大的欄位主導,年齡幾乎被忽略。特徵縮放就是把所有欄位調到差不多的尺度,讓它們公平競爭。
變成均值0、標準差1。最常用。
最小變0、最大變1。
用中位數,不怕極端值。
小提醒:樹模型(決策樹、隨機森林、XGBoost)不需要縮放;但 KNN、SVM、神經網路、線性模型很需要。
下面兩欄原始範圍差很大。按「標準化」看它們被拉到同一尺度——原本被收入主導的距離計算,年齡終於也有發言權。
原始狀態下收入(橫跨百萬)完全壓過年齡(0~100);標準化後兩軸都變成大約 −3~+3,距離計算才公平,模型才不會只看收入。
| 方法 | 概念 | 適合 |
|---|---|---|
| 標準化 Z-score | 減均值除標準差→均值0變異1 | 多數情況、有離群較穩 |
| 正規化 Min-Max | 縮到 [0,1] | 需固定範圍(影像、神經網路) |
| Robust Scaling | 用中位數與 IQR | 有明顯離群值時 |
| 免縮放 | — | 樹模型(決策樹/RF/XGB) |
特徵縮放讓各特徵尺度一致,iPAS 前處理考點(中級科目三)。重點:標準化(減均值除標準差)與正規化(縮到 0 到 1)讓距離型(KNN、SVM)與梯度型模型更穩、更快收斂。易混點:縮放參數(均值、標準差)只能用訓練集擬合再套到驗證與測試,否則資料洩漏、評估虛高;樹模型通常不需縮放。情境:在資料切分之後、且只用訓練集統計量做縮放。
想練情境題與詳解 → AI 學習與考證地圖
把不同尺度的數值特徵調到可比範圍;對依賴距離或梯度的模型(KNN、SVM、K-means、神經網路、PCA)很重要,否則大尺度特徵會主導。
標準化(Standardization)轉成均值 0、標準差 1,對離群值較穩、不限範圍;正規化(Min-Max)壓到 0 與 1 之間固定範圍,但對離群值敏感。
樹模型(決策樹、隨機森林、GBDT)依門檻分割、對單調縮放不敏感,通常不需要;距離型與梯度型則需要。
縮放參數(均值/標準差或 min/max)只能用訓練資料算,再套到驗證與測試;用全資料算會洩漏,應放進 pipeline 對各折分別 fit。
用 RobustScaler(以中位數與 IQR)較不受離群值影響,或先處理離群值再標準化。