文章目錄
- 前言
- 一、集成學習是什么?
- 1.基本思想
- 2.集成學習的類型
- 3. 集成學習的結合策略
- 3.1 為什么結合策略是集成學習的靈魂?
- 3.2 經典策略
- (1)**投票法(Voting)**
- **(2)平均法(Averaging)**
- **(3) 學習法**
- 3.3 關鍵對比與選擇建議
- 總結
前言
近日,我有幸深入學習了國防科技大學呂欣教授及其團隊所著的《數據挖掘》一書,深受啟發,收獲頗豐。這本書系統性地介紹了數據挖掘的核心理論與經典算法,內容既涵蓋基礎概念,又深入實戰技巧,尤其適合機器學習、數據科學領域的初學者和進階者閱讀。
呂欣教授及其團隊以其深厚的學術功底和豐富的實踐經驗,將復雜的數據挖掘知識講解得條理清晰、通俗易懂。書中不僅有嚴謹的數學推導,還配有豐富的案例和代碼實現,真正做到了理論與實踐相結合。
為更好地消化吸收書中精華,我將持續更新《集成學習》章節的讀書筆記,內容包括集成學習的基本思想、常見方法(如Bagging、Boosting、Stacking)、隨機森林、AdaBoost、GBDT、XGBoost以及LightGBM等核心算法的原理、實現與調參技巧。希望能幫助更多同學系統掌握集成學習的知識體系,也為大家在學習《數據挖掘》這本書時提供一份參考資料。
如果你對數據挖掘、機器學習感興趣,或正在尋找一本既能打基礎又能提升實戰能力的教材,呂欣教授的《數據挖掘》絕對是不可多得的好書。推薦給大家!
下面是我的讀書筆記正文,歡迎交流指正👇
提示:以下是本篇文章正文內容,下面案例可供參考
一、集成學習是什么?
1.基本思想
(1)“弱者的聯盟”
集成學習(Ensemble learning)是機器學習中的一種思想,通過構建并結合多個個體學習器(Individual learner)形成一個精度更高的機器學習模型。這些個體學習器也是機器學習算法,可以是樸素貝葉斯、決策樹、支持向量機和神經網絡等。集成學習示意圖如圖1所示。
傳統機器學習算法 (例如:決策樹,邏輯回歸等) 的目標都是尋找一個最優分類器盡可能的將訓練數據分開。集成學習 算法的基本思想就是將多個弱分類器組合,從而實現一個預測效果更好的集成分類器。集成算法可以說從一方面驗證了中國的一句老話:三個臭皮匠,賽過諸葛亮。
(2)“多樣性紅利”:模型間的差異性比單個模型的精度更重要,這與人類社會團隊協作的規律驚人相似。
2.集成學習的類型
3. 集成學習的結合策略
3.1 為什么結合策略是集成學習的靈魂?
集成學習的核心不是“模型越多越好”,而是“如何讓模型間的協作產生超越個體的智
慧”。真正決定集成效果上限的,往往是基學習器的結合策略(Combination Strategy)。
[!NOTE]
我的思考:
如果把基模型比作“專家”,結合策略就是“專家委員會”的議事規則;
好的策略能抑制噪聲、放大有效信息,甚至讓弱模型通過協作達到強模型的效果;
結合策略的設計本質是信息融合的數學建模,背后隱含對數據分布、模型能力的先驗假設。
3.2 經典策略
(1)投票法(Voting)
- 硬投票(Hard Voting):平等對待每個模型,易受“多數暴政”影響(噪聲模型可能主導結果)
y^=argmax?c∈C∑i=1TI(hi(x)=c)\hat{y}=\operatorname{argmax}_{c\in C}\sum_{i=1}^T\mathbb{I}(h_i(x)=c) y^?=argmaxc∈C?i=1∑T?I(hi?(x)=c)
? 其中:
? C:類別集合; II(?):指示函數(預測為類別 cc 時取1,否則取0)。
? 特點:直接統計類別票數,多數決制;可能受“多數噪聲模型”干擾(若多個弱模型預測錯誤)。
- 軟投票(Soft Voting):引入概率權重,但對置信度的校準敏感(模型輸出概率未必可靠)。
y^=argmax?c∈C1T∑i=1TPi(c∣x)\hat{y}=\operatorname{argmax}_{c\in C}\frac{1}{T}\sum_{i=1}^TP_i(c|x) y^?=argmaxc∈C?T1?i=1∑T?Pi?(c∣x)
? 其中:
- Pi(c∣x)表示第i個模型對樣本x屬于類別c的預測概率。P_i(c|x)表示第i個模型對樣本x屬于類別c的預測概率。 Pi?(c∣x)表示第i個模型對樣本x屬于類別c的預測概率。
? 特點:要求基模型能輸出概率(如邏輯回歸、帶概率校準的SVM);對模型校準敏感,若概率未校準可能效果下降。
- 加權投票(Weighted Voting)
? 以軟投票為例:
y^=argmax?c∈C∑i=1TwiPi(c∣x)\hat{y}=\operatorname{argmax}_{c\in C}\sum_{i=1}^Tw_iP_i(c|x) y^?=argmaxc∈C?i=1∑T?wi?Pi?(c∣x)
- 權重wi可基于模型性能或領域知識設定(如AUC值高的模型權重更大)。
[!NOTE]
- 是否所有模型的“投票權”應該平等?
- 如何量化模型在不同樣本區域的置信度?
- 改進思路:動態權重分配(如基于樣本局部密度的加權投票)。
(2)平均法(Averaging)
- 簡單平均(Simple Averaging)
y^=1T∑i=1Thi(x)\hat{y}=\frac{1}{T}\sum_{i=1}^Th_i(x) y^?=T1?i=1∑T?hi?(x)
其中:T:基模型數量;h_i(x):第 i 個模型對樣本 x 的預測值;y^:最終預測結果。
? 特點:所有模型權重相等,假設模型誤差服從獨立同分布;對異常值敏感(可通過截斷平均改進)。
-
加權平均(Weighted Averaging)
y^=∑i=1Twihi(x),其中∑i=1Twi=1\hat{y}=\sum_{i=1}^Tw_ih_i(x),\quad\text{其中}\sum_{i=1}^Tw_i=1 y^?=i=1∑T?wi?hi?(x),其中i=1∑T?wi?=1
wi:第i個模型的權重,通常根據模型性能(如驗證集準確率)動態分配。特點:高性能模型獲得更高權重;需注意權重分配的合理性(避免過擬合驗證集)。
[!TIP]
算術平均假設誤差服從高斯分布,但現實任務中誤差可能呈現偏態或重尾分布。
案例:在金融風險預測中,少數極端值的預測誤差可能對簡單平均產生災難性影響。
解決方案:
截斷平均(Trimmed Mean):去掉最高/最低的預測值;
分位數融合(Quantile Blending):直接集成不同分位數的預測結果。
(3) 學習法
- 傳統Stacking用基模型的輸出訓練元模型,但可能引入過擬合風險(尤其在基模型高度相關時)。
- 我的實驗發現:
- 使用低復雜度的元模型(如線性回歸)反而比深度網絡更穩定;
- 對基模型輸出做特征工程(如加入原始特征、交互項)比直接拼接更有效;
- 對抗驗證技巧:通過檢測元模型是否過擬合基模型的噪聲來調整訓練策略。
3.3 關鍵對比與選擇建議
方法 | 適用場景 | 優點 | 缺點 |
---|---|---|---|
簡單平均 | 模型性能相近的回歸任務 | 計算簡單,抗過擬合 | 對異常值和低質量模型敏感 |
加權平均 | 模型性能差異顯著的回歸任務 | 靈活利用模型差異性 | 需額外計算權重,可能過擬合驗證集 |
硬投票 | 類別標簽明確的分類任務 | 無需概率輸出,實現簡單 | 忽略模型置信度,易受多數噪聲影響 |
軟投票 | 模型輸出可靠概率的分類任務 | 利用概率信息,結果更平滑 | 依賴概率校準,計算復雜度略高 |
總結
以上就是今天要講的內容,通過對呂欣老師《數據挖掘》教材中“集成學習”章節的系統學習與梳理,我對這一強大機器學習范式的核心思想和方法論有了更深刻的認識。
-
核心思想:協作優于單干
集成學習的魅力在于其樸素而深刻的哲學:“弱者的聯盟”。它通過構建并結合多個性能尚可的“弱學習器”,最終形成一個預測更精準、泛化能力更強的“強學習器”。這完美印證了“三個臭皮匠,賽過諸葛亮”的古老智慧。其成功的核心關鍵并非個體模型的極致性能,而在于模型之間的“多樣性”,即模型誤差的差異性和互補性。 -
方法論的三大支柱:
集成學習主要圍繞三大策略展開,各有其獨特的工作機制與適用場景:
(1) Bagging (如隨機森林):通過并行 Bootstrap 抽樣構建多個基學習器,并采用投票/平均法結合結果。其核心是降低方差,通過“民主決策”來平滑噪聲、避免過擬合。
(2) Boosting (如AdaBoost, GBDT):通過串行方式訓練基學習器,每個新模型都專注于修正前序模型的錯誤,并動態調整樣本權重。其核心是降低偏差,體現“知錯能改”,逐步逼近復雜問題。
(3) Stacking:引入“元學習器”來學習如何最優地組合多個基學習器的預測結果,如同一個“專家委員會”的決策機制,靈活性最高,但需謹慎防止過擬合。 -
結合策略是靈魂:
如何將多個模型的輸出轉化為最終決策,是集成學習的精髓。投票法(硬投票、軟投票)和平均法(簡單平均、加權平均)是直觀的策略,而其背后蘊含的是對模型置信度、性能差異以及誤差分布的深刻考量。
總而言之,集成學習不僅是數據挖掘工具箱中一套高效且實用的算法集合,更是一種解決問題的系統性思維——通過協作與組合,將有限的個體能力匯聚成強大的集體智慧。呂欣教授的《數據挖掘》一書對此進行了極為清晰和富有洞見的闡述,極大地幫助我構建了系統性的知識框架,特此推薦給每一位對機器學習感興趣的朋友。
作者:栗子同學、李同學