iT邦幫忙

2025 iThome 鐵人賽

DAY 7
0

本筆記涵蓋機器學習中兩個至關重要的步驟:資料預處理特徵工程。這兩個環節是確保模型效能的基石,其重要性甚至超過模型演算法本身。


一、資料預處理

在開始任何機器學習任務前,首先要對原始資料進行預處理。這是一個包含探索性分析資料清洗特徵工程的流程。

探索性分析 (Exploratory Data Analysis, EDA)

探索性分析是透過視覺化圖表和統計方法,對原始資料進行初步了解的過程。其主要目的在於:

  • 了解資料集的基本資訊:掌握資料的結構、類型和概況。
  • 為資料清洗提供方向:識別資料中的問題,例如重複值、缺失值或異常值。
  • 為特徵工程提供方向:發掘資料中的潛在模式和有價值資訊。

資料清洗 (Data Cleansing)

「好的資料勝過好的演算法。」這句話點出了資料清洗的重要性。現實中的資料集往往是「不乾淨的」,可能存在以下問題:

  • 重複記錄:資料集中存在完全相同的多條記錄。
  • 不相關記錄:資料集中包含與分析目的無關的數據。
  • 無用的特徵資訊:某些欄位(如身份證號碼)對分析結果沒有影響。
  • 文字拼寫錯誤:明顯的輸入錯誤,例如「beijing」和「Beijing」。
  • 資訊格式不統一:同一特徵有多種表示方式,例如「陝西省」和「陝西」。
  • 離群值 (Outlier):明顯偏離資料常態的數值,例如年齡為 175。
  • 缺失資料 (Missing Data):表格中某些欄位資訊空白。

二、特徵工程 (Feature Engineering)

特徵工程又稱特徵提取,是從原始資料中尋找並建立合適特徵的過程。在許多機器學習任務中,這不僅是最重要,也是最耗時的環節。一個好的特徵集能顯著提升模型表現,甚至比使用複雜的模型演算法更有效。在 Kaggle 競賽中,參賽者平均花費超過 70% 的時間在特徵工程上。

處理離群值

處理離群值時,不應輕易刪除。即使數值過大,它也可能包含有價值的資訊。除非有確切證據證明其為錯誤數據,否則應謹慎處理。

處理缺失值

處理缺失值有幾種常見方法:

  1. 填充法:使用均值中位數眾數來填充缺失值。這種方法快捷方便,但若缺失值佔比較大,可能會引入雜訊,影響分析結論。更複雜的填充方式包括插值模型擬合
  2. 刪除法刪除包含缺失值的特徵。當某個特徵大部分值都缺失且對分析沒有幫助時,可以考慮此方法。
  3. 保留法:將缺失值視為一個獨立類別。這種方法特別適用於分類型資料,能保留缺失值本身所帶有的資訊。

上一篇
【Day 8】機器學習概述(上)
系列文
AI 系列讀書會:小白也能搞懂的 AI 與大數據9
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言