資料科學團隊在模型訓練前,需對數值特徵進行正規化(Normalization)或標準化(Standardization)。為確保模型評估結果具真實性並避免資料洩漏(Data Leakage),下列何者為最適當的作法?
答案 (C)
核心概念
測試資料的角色是模擬「模型上線後從沒見過的新資料」。因此任何從測試資料算出來的資訊,都不該回流到訓練流程中——包括平均數與標準差這種看似無害的統計量。正確流程是:先切分資料,只用訓練集算出平均數與標準差(fit),再把這組參數套用到訓練集與測試集上做轉換(transform)。這就是 scikit-learn 中 fit_transform 只對訓練集用、測試集只用 transform 的原因。
答題技巧
快速判斷技巧:記住一句口訣——「統計量只能從訓練集長出來,但要套用到兩邊」。四個選項用這句話一比,只有 (C) 完全吻合。
易錯陷阱:(B) 最容易誤選,因為「各自獨立處理」聽起來很符合「不要互相汙染」的直覺。但標準化不是隔離問題,而是基準問題——兩邊用不同的尺子量,量出來的數字就不能比較。