機器學習技術與應用 | 單元 5.1 核心主題解析
一、 資料清理:垃圾進,垃圾出 (GIGO) 基本原則
資料清理是整個機器學習流程中耗時最長(約 70-80%)但最重要的步驟。
1.1 主要任務
- 重複值處理: 刪除重複的紀錄,避免模型給予特定樣本過高權重。
- 異常值偵測 (Outlier Detection): 識別並處理極端錯誤數據。
- 方法:3倍標準差、IQR (四分位距法)、箱型圖視覺化。
- 一致性檢查: 確保單位(米 vs 公分)、日期格式、類別名稱統一。
二、 缺失值處理技術 (Imputation) 高頻考點
實務資料常有缺漏,處理方式會直接影響模型穩定性。
| 處理策略 | 適用場景 | 優缺點 |
|---|---|---|
| 直接刪除 (Deletion) | 缺失比例極低(< 5%)。 | 最簡單,但可能遺失重要資訊。 |
| 均值/中位數插補 | 數值型資料、分佈較均勻。 | 簡單快,但會低估數據變異。 |
| 眾數插補 | 類別型資料。 | 保留類別特性,但易產生偏誤。 |
| 模型插補 (K-NN/Iterative) | 缺失具相關性。 | 準確度高,但計算成本大。 |
考點提示:
並非所有缺失都應插補。有時缺失本身就是一個「特徵」(例如:未填寫信用卡額度可能代表該客戶沒有信用卡),此時可將缺失值標記為一個獨立的類別(如 "Unknown")。
三、 類別資料編碼 (Encoding) 轉換邏輯
機器學習模型只能理解「數字」,因此文字類別必須轉換。
- 標籤編碼 (Label Encoding):
將類別轉為 0, 1, 2...。
限制: 適合有「順序性」的資料(如:小、中、大)。若用於無順序資料(如:紅、藍),模型會誤以為「藍(1) > 紅(0)」。 - 獨熱編碼 (One-Hot Encoding):
為每個類別建立新欄位。
限制: 類別太多時會導致「維度災難」,造成矩陣極度稀疏。
四、 特徵縮放 (Scaling) 與 數據轉換 必考原理
不同特徵的單位(量綱)差異過大時,會導致模型訓練困難。
| 技術名稱 | 公式邏輯 | 特性與建議 |
|---|---|---|
| 最小最大縮放 (Min-Max) | $(x-min)/(max-min)$ | 將資料壓縮至 [0, 1]。對異常值極敏感。 |
| 標準化 (Standardization) | $(x-\mu)/\sigma$ | 轉為平均 0、標準差 1。適用於梯度下降與 SVM。 |
| 對數轉換 (Log Transform) | $log(x)$ | 處理 「長尾分佈」,使其趨近常態分佈。 |
為什麼要縮放?
若特徵 A 範圍是 0-10000,特徵 B 是 0-1。在計算「距離」(如 KNN)或進行「梯度下降」時,特徵 A 會主導整個權重更新,導致模型無法學習特徵 B 的細微變化。
五、 特徵選擇與降維 效能優化
過多的特徵會導致模型過擬合且訓練慢,必須進行精簡。
5.1 三大特徵選擇法
- 過濾法 (Filter): 透過統計指標(如相關係數、卡方檢定)。速度最快,與模型無關。
- 包裹法 (Wrapper): 使用特定模型不斷試錯(如遞歸特徵消除 RFE)。準確但計算極慢。
- 嵌入法 (Embedded): 訓練時自動篩選。典型例子:L1 正則化 (Lasso)。