【第二章:机器学习与神经网络概述】03.类算法理论与实践-(4)集成方法(Ensemble Methods)

第二章: 机器学习与神经网络概述

第三部分:类算法理论与实践

第四节:集成方法

内容:Bagging与Boosting、随机森林与梯度提升树(GBDT)。

集成方法通过组合多个弱分类器来构建一个更强的学习模型,从而提高预测性能、降低过拟合风险,是现代机器学习中非常重要的一类算法。


一、集成方法的基本思想

  • 弱分类器(Weak Learner):泛化能力略优于随机猜测的模型(如浅层决策树)

  • 集成策略

    • Bagging(Bootstrap Aggregating)

    • Boosting

    • Stacking(叠加)(进阶内容)


二、Bagging:自助采样法

核心思想:并行训练多个模型,进行投票或平均

  • 对训练数据进行有放回采样,生成多个子训练集

  • 每个子集上训练一个模型(通常是决策树)

  • 对于分类问题:投票表决;回归问题:取平均

典型算法:随机森林(Random Forest)
  • 在 Bagging 基础上,引入特征随机选择

  • 每棵树划分节点时,从特征子集中选最优特征

  • 有效降低模型方差,抗过拟合能力强

from sklearn.ensemble import RandomForestClassifier

rf = RandomForestClassifier(n_estimators=100, max_depth=5)
rf.fit(X_train, y_train)

三、Boosting:顺序学习,重点关注错误

核心思想:串行训练模型,每一轮关注前一轮错误的样本

  • 每一轮训练一个弱分类器

  • 每轮根据错误样本调整样本权重残差

  • 最终组合所有弱分类器(加权)

典型算法:梯度提升树(GBDT)
  • 每一轮拟合上轮残差

  • 通过梯度下降方向最小化损失函数

  • 对小数据、高准确率有很强表现

from sklearn.ensemble import GradientBoostingClassifier

gbdt = GradientBoostingClassifier(n_estimators=100, learning_rate=0.1)
gbdt.fit(X_train, y_train)

四、Bagging vs Boosting 对比

特性BaggingBoosting
模型训练方式并行训练串行训练
误差目标减小方差(Variance)减小偏差(Bias)
抗噪声能力强(如随机森林)弱(容易过拟合)
常见算法随机森林(Random Forest)GBDT、AdaBoost、XGBoost、LightGBM 等

五、Python中常用集成方法(sklearn.ensemble

模型简介
RandomForest多棵决策树+随机特征选择
AdaBoost基于错误样本调整权重
GradientBoosting基于梯度残差建模
VotingClassifier多模型组合投票
StackingClassifier模型融合 + 二层训练器

六、常见应用场景

  • 高维数据分类问题(如文本、图像)

  • 需要模型泛化能力强的任务

  • 小样本、精度要求高的建模问题


七、总结

特点BaggingBoosting
代表算法随机森林GBDT, AdaBoost
偏差/方差优化减少方差减少偏差
并行/串行并行串行
模型解释性一般较弱(可使用特征重要性工具)

以下是 Bagging、Boosting、Stacking 和单模型 的对比表,帮助你快速理解它们之间的异同:


集成方法模型对比表

对比维度Bagging(如随机森林)Boosting(如GBDT、XGBoost)Stacking(堆叠法)单模型(如决策树)
训练方式并行训练多个弱模型串行训练多个弱模型多个基础模型 + 元学习器单个模型
主要目标降低方差(Variance)降低偏差(Bias)提升综合预测能力学习训练集规律
样本处理自助采样(Bootstrap)错误样本加权或残差建模所有模型共享同一训练集一次性使用全部训练数据
对噪声鲁棒性较强(不易过拟合)一般(可能过拟合)取决于基础模型易受噪声影响
特征处理方式每棵树选取特征子集每轮用全部特征(可调)不限,可混合特征选择机制通常使用全部特征
典型算法随机森林(Random Forest)GBDT、AdaBoost、XGBoost、LightGBM堆叠模型(StackingClassifier)决策树、SVM、KNN 等
是否易并行化✅ 易并行❌ 串行,难并行⚠️ 第二层训练器难并行✅ 容易
是否支持概率预测✅ 支持✅ 支持✅ 支持(取决于元模型)部分支持
模型复杂性中等较高较低
可解释性一般(可视化特征重要性)较差高(如单棵树)
性能表现稳定,抗噪声高精度,小样本优泛化性能强,多任务适用依赖模型类型,波动大

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值