機器學習知識地圖 · 監督式學習
梯度提升樹 (GBDT)
XGBoost / LightGBM / CatBoost
觀念教學
GBDT 是目前結構化數據(表格資料)最強的演算法,透過逐步修正前一棵樹的錯誤來提升準確度。
白話說明
隨機森林是「大家同時猜,投票決定」,GBDT 是「一個接一個猜,後面的人專門修正前面的錯誤」。第一棵樹猜完有殘差,第二棵樹專門學殘差,第三棵再修正剩下的,越疊越準。
三大主流實現
- XGBoost:最經典,Kaggle 競賽神器
- LightGBM:更快,適合大資料集
- CatBoost:自動處理類別特徵,不用手動編碼
使用場景
信用評分、點擊率預測、風險評估、推薦系統、幾乎所有表格資料問題。
優點
準確度極高、能處理缺失值、有特徵重要性。
缺點
不如決策樹好解釋、超參數多需要調參、對非結構化資料(圖片/文字)不如深度學習。
應用場景
評估指標
iPAS 歷屆考題詳解(2 題)
先自行作答,再展開詳解。題目出處均為 iPAS AI 應用規劃師正式考題,著作權屬原主辦單位。
下列何者最能同時反映 XGBoost(eXtreme Gradient Boosting)相較於傳統梯度提升決策樹(Gradient Boosting Decision Tree, GBDT)的主要技術改進?
- A引入正則化項(Regularization)以抑制過擬合,並支援缺失值自動處理與並行化訓練
- B改以隨機森林(Random Forest)架構取代樹模型以提升準確率
- C以類神經網路(Neural Network)取代弱分類器(Weak Learners)
- D採用批次正規化(Batch Normalization)技術提升模型穩定性
看正解與逐選項詳解
正解:A
正確答案:(A)
【正解解析】
XGBoost 相較傳統梯度提升決策樹(GBDT)的代表性技術改進有三:第一,在目標函數中加入正則化項(對葉節點數量與葉節點權重的懲罰),直接抑制過擬合;第二,採用稀疏感知(Sparsity-aware)設計,能自動學習缺失值的最佳分支方向,毋須事先補值;第三,在特徵層級實作並行化與快取優化,大幅加速訓練。選項 (A) 同時涵蓋這三項改進,描述最完整正確。
【為何其他選項錯了?】
- (B):隨機森林屬於 Bagging 集成策略,XGBoost 屬於 Boosting 集成策略,兩者是不同的集成路線;XGBoost 並未改採隨機森林架構。
- (C):XGBoost 的弱學習器仍是決策樹(CART),並非以神經網路取代。
- (D):批次正規化(Batch Normalization)是深度神經網路用於穩定各層輸入分布的訓練技巧;樹模型沒有層與批次梯度訓練的概念,並無此機制。
提示:XGBoost 三大改進:目標函數帶正則化、缺失值自動處理、並行化加速。
某資料科學家在信用評分任務中使用 XGBoost 建立模型,發現模型在訓練集表現良好但驗證集出現過擬合跡象。他檢視其模型設計,發現 XGBoost 在目標函數(Objective Function)中引入額外的正則化機制以控制模型複雜度。相較於傳統梯度提升決策樹(GBDT),XGBoost 在其核心目標函數中加入了下列哪一種關鍵設計,使其具備更強的防過擬合能力?
- A加入樹的複雜度懲罰項(包含深度、葉節點數量與葉節點權重的 L2 正則化)
- B加入動態學習率(Dynamic Learning Rate)的強制衰減機制
- C加入卷積運算(Convolution)以萃取特徵間的空間關係;
- D強制所有決策樹深度為 1(Decision Stumps)
看正解與逐選項詳解
正解:A
正確答案:(A)
【正解解析】
XGBoost 的目標函數為「訓練損失+Ω(樹複雜度懲罰)」,其中 Ω 包含葉節點數量懲罰(γT)與葉節點權重的 L2 正則化(½λ‖w‖²),並配合樹深限制,使每棵樹在「擬合殘差」與「維持簡單」之間取得平衡。這是 XGBoost 相較傳統 GBDT 更能防止過擬合的核心設計,另輔以二階泰勒展開、學習率收縮(Shrinkage)與行列抽樣等機制。
【為何其他選項錯了?】
- (B):XGBoost 提供 learning_rate(Shrinkage)超參數,但屬於外部訓練設定,並非目標函數內建的動態強制衰減機制,敘述與實際設計不符。
- (C):卷積運算是卷積神經網路(CNN)萃取空間特徵的操作,樹模型的建構過程不涉及卷積。
- (D):深度為 1 的決策樹樁(Decision Stump)是 AdaBoost 常用的弱學習器設定;XGBoost 的樹深是可調參數,並無強制深度為 1 的限制。
提示:XGBoost 防過擬合的關鍵在目標函數自帶複雜度懲罰 Ω(葉節點數 γ 與葉權重 L2),這是與傳統 GBDT 的主要分野。