---
title: "自適應提升（AdaBoost）"
slug: adaboost
language: zh-TW
source: https://aiterms.tw/terms/adaboost
updated_at: 2026-07-30
tags: [機器學習, 集成學習, Boosting, 弱學習, 經典演算法]
ipas_term: false
---

# 自適應提升（AdaBoost）

透過動態調整樣本權重，使後續模型專注於前面模型的分類錯誤的經典 Boosting 演算法。

## 完整說明

AdaBoost（Adaptive Boosting，自適應提升）由 Freund 與 Schapire 於 1997 年提出，是第一個實用的 Boosting 演算法，將計算機科學中的「弱學習假設」轉化為可實現的演算法。其核心機制是：在每一輪訓練中，錯誤分類的樣本權重提升，正確分類的樣本權重降低，使下一輪的學習演算法集中精力在「難分類」的樣本上。儘管在當代已被梯度提升等更通用的方法取代，AdaBoost 仍具有重要的教學價值和某些實務應用。

## 常見問題

### 為什麼 AdaBoost 現在用得越來越少？

主要原因有三點：第一，梯度提升框架更通用：AdaBoost 針對指數損失，梯度提升適應任意損失函數，使後者更靈活；第二，梯度提升性能往往更優，特別是在結構化資料上，XGBoost 已成為事實標準；第三，AdaBoost 對異常值極端敏感，一個標注錯誤可能被放大數倍，而梯度提升的魯棒性更好。在 Kaggle 競賽、金融風控、推薦系統等實務應用中，選擇梯度提升（通常 XGBoost 或 LightGBM）已成為默認做法。但 AdaBoost 仍在某些地方有應用，如人臉偵測中的級聯分類器（Cascade Classifier）和某些實時系統，因為它的快速性和內存效率。

### AdaBoost 中的基礎分類器應該選什麼？決策樹可以嗎？

AdaBoost 理論上支持任意準確率 > 50% 的分類器作為基礎模型：決策樹、線性分類器、SVM 都可以。實務中最常選決策樹（尤其是淺樹，如決策樁 Decision Stump，只有一層分裂），原因是：第一，樹的訓練快，Boosting 需要多輪訓練；第二，樹本身的高方差特性與 Boosting 的「多樣性」理念相得益彰；第三，樹對權重敏感，能有效響應樣本權重的變化。使用其他分類器（如 SVM 或邏輯回歸）的優點是可能具有更好的統計特性，但缺點是計算成本通常更高，Boosting 的邊際收益也更低（因為基礎模型本身已足夠強）。決策樹是歷史上的標準選擇，scikit-learn 預設也是樹。

### AdaBoost 為什麼對異常值敏感？怎麼防止？

AdaBoost 的樣本權重動態調整機制雙刃劍：一方面它使演算法能聚焦於難分類樣本，另一方面若難分類的原因是異常值或標注錯誤，Boosting 會執著地去擬合它，最終過擬合到這些錯誤點。梯度提升因為引入了二階導數和正則化，魯棒性更好。若必須用 AdaBoost，防止異常值敏感的主要手段有：第一，嚴格的資料清洗，移除明顯的離群值和標注錯誤；第二，使用 Robust AdaBoost 變體，例如設定樣本權重的上界（防止單個樣本的權重無限升高）；第三，引入正則化項限制基礎分類器的複雜度；第四，用交叉驗證選擇迭代輪數，而非訓練到完全過擬合。在有雜訊的現實資料中，通常梯度提升會表現更穩健。

---

來源：https://aiterms.tw/terms/adaboost
快查頁：https://aiterms.tw/terms/adaboost
最後更新：2026/07/30
深度解說：https://aiterms.tw/learning/what-is-adaboost