当前位置: 首页 > news >正文

集成学习知识点讲解

集成学习知识点讲解

集成学习知识点讲解


集成学习知识点讲解文档

知识导图(Plain Text)

集成学习 ├─ 集成学习基础 │ ├─ 定义:多弱学习器组合成强学习器 │ ├─ 思想:弱者联盟,稳、准、抗过拟合 │ └─ 两类:Bagging、Boosting ├─ Bagging │ ├─ 抽样:有放回随机抽样 │ ├─ 训练:并行、独立 │ └─ 输出:平权投票、多数表决 ├─ Boosting │ ├─ 训练:串行、关注前序错误 │ ├─ 权重:样本加权、学习器加权 │ └─ 输出:加权投票 ├─ Bagging vs Boosting 对比 │ ├─ 采样方式 │ ├─ 并行/串行 │ └─ 投票机制 └─ 随机森林 ├─ 基模型:CART决策树 ├─ 双随机:样本随机 + 特征随机 ├─ 构建步骤 ├─ API与参数 └─ 案例:泰坦尼克号预测

核心名词解释

  • 集成学习:组合多个弱学习器得到更精准、更稳定的强学习器。
  • 弱学习器:效果一般、结构简单的基础模型。
  • Bagging:并行式集成,有放回抽样,平权投票。
  • Boosting:串行式集成,修正错误,加权投票。
  • Bootstrap 抽样:有放回随机采样。
  • 随机森林:Bagging + 决策树 + 双随机策略。
  • 多数表决:Bagging 的预测方式,取票数最多结果。
  • 加权投票:Boosting 的预测方式,按权重累加。

一、集成学习基础

1.1 什么是集成学习

集成学习通过组合多个弱学习器构建更强模型。

  • 训练:依次训练多个弱模型
  • 预测:所有弱学习器联合决策
  • 优势:比单个模型更准、更稳、更不易过拟合

1.2 核心思想:弱者联盟

  • 单个复杂模型 → 能力过强 → 容易过拟合
  • 多个简单模型组合 → 能力变强、泛化更好

1.3 集成学习分类

  • Bagging:随机森林
  • Boosting:Adaboost、GBDT、XGBoost、LightGBM

二、Bagging 思想

2.1 Bagging 流程

  1. 对训练集有放回随机抽样,生成多个训练集
  2. 并行训练多个独立学习器
  3. 平权投票、多数表决输出结果

2.2 Bagging 示例步骤

  1. 采样不同数据
  2. 训练分类器
  3. 平权投票得到最终结果

三、Boosting 思想

3.1 Boosting 流程

  1. 串行训练
  2. 每一个学习器重点纠正前一个的错误
  3. 加权投票得到最终结果

3.2 Boosting 举例

逐步变强、层层弥补不足
代表:Adaboost、GBDT、XGBoost、LightGBM


四、Bagging vs Boosting 对比

项目BaggingBoosting
数据采样有放回随机抽样全部样本,动态调整权重
训练方式并行,无依赖串行,有先后依赖
投票方式平权投票,多数表决学习器加权投票

4.1 本节总结

  • 集成学习 = 多个弱模型组合
  • Bagging:并行、有放回、平权投票
  • Boosting:串行、纠错、加权投票

五、随机森林算法

5.1 随机森林定义

基于Bagging + 决策树的集成算法:

  1. 有放回抽样
  2. 随机选择部分特征
  3. 训练多棵 CART 树
  4. 平权投票输出结果

5.2 随机森林构建步骤

  1. 随机选 m 条样本(有放回)
  2. 随机选 k 个特征
  3. 训练一棵决策树
  4. 重复构建 n 棵树
  5. 投票输出

5.3 关键问题

  1. 为什么随机抽样?
    不抽样 → 所有树完全一样,集成无意义。
  2. 为什么有放回?
    使树之间既有差异又有重叠,投票更有效。

5.4 随机森林 API

from sklearn.ensemble import RandomForestClassifier

重要参数:


六、案例:泰坦尼克号生存预测

import pandas as pd from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import GridSearchCV def dm01_随机森林(): # 1 读取数据 titan = pd.read_csv("./data/titanic/train.csv") # 2 特征与标签 x = titan[["Pclass", "Age", "Sex"]].copy() y = titan["Survived"] # 3 缺失值填充 x['Age'].fillna(titan["Age"].mean(), inplace=True) # 4 One-Hot 编码 x = pd.get_dummies(x) # 5 数据集划分 x_train, x_test, y_train, y_test = train_test_split( x, y, random_state=22, test_size=0.2 ) # 6 单一决策树 dtc = DecisionTreeClassifier() dtc.fit(x_train, y_train) print('决策树准确率:', dtc.score(x_test, y_test)) # 7 随机森林 rfc = RandomForestClassifier(max_depth=6, random_state=9) rfc.fit(x_train, y_train) print('随机森林准确率:', rfc.score(x_test, y_test)) # 8 网格搜索调参 estimator = RandomForestClassifier(random_state=9) param = { "n_estimators": [40,50,60,70], "max_depth": [2,4,6,8,10] } grid = GridSearchCV(estimator, param, cv=2) grid.fit(x_train, y_train) print('最优准确率:', grid.score(x_test, y_test)) print('最优模型:', grid.best_estimator_)

6.1 本节总结

  • 随机森林 = Bagging + 决策树 + 双随机
  • 步骤:抽样 → 选特征 → 建多棵树 → 投票
  • API:RandomForestClassifier
  • 效果明显优于单决策树

6.2 练习

答案:B → A → D → C


七、全章总结

  1. 集成学习:组合弱学习器,提升精度与稳定性
  2. Bagging:并行、有放回、投票(随机森林)
  3. Boosting:串行、纠错、加权(GBDT/XGBoost)
  4. 随机森林:双随机策略,抗过拟合、效果强
  5. 实战:泰坦尼克号预测,随机森林明显更优

http://www.zskr.cn/news/1334536.html

相关文章:

  • 别再傻傻重启服务器了!手把手教你用ipmitool远程管理Linux服务器(含用户权限配置)
  • 【软考高级架构】案例题考前突击——分布式系统中的负载均衡设计与优化
  • 告别数据跳动!AD7124与GD32F103 SPI通信的稳定性调优实战
  • 别再搞混了!用5分钟彻底搞懂CAPL中数组的‘声明大小’和‘实际长度’
  • 告别Gerber导入烦恼:手把手教你用HFSS 3D Layout精准还原PCB叠层(附AD导出避坑点)
  • Servlet 文件上传详解
  • 融合复杂动力边界的振动台子结构试验技术【附程序】
  • DID做完别急着交稿!Stata里平行趋势和安慰剂检验的保姆级避坑指南
  • Midjourney产品摄影模拟:20年视觉总监压箱底的17个行业禁忌Prompt(含Amazon/Shopify/TikTok平台合规性校验清单)
  • LLM专项
  • 程设第三节课作业
  • SQLmap的使用
  • 2026年专业单槽超声波清洗机哪家强:双槽超声波清洗机/台式超声波焊接机/吻合器超声波焊接机/塑料超声波焊接机/选择指南 - 优质品牌商家
  • 2026年20kHz超声波焊接机技术全解:三槽超声波清洗机/全自动超声波清洗机/全自动超声波焊接机/医用超声波清洗机/选择指南 - 优质品牌商家
  • Linux内核死锁检测利器lockdep:原理、实战与深度调优
  • 【26年社工】初级社会工作者历年真题及答案PDF电子版(2010-2025年)
  • 为什么92%的科技从业者仍在用Google搜AI新闻?Perplexity专属新闻索引架构(含2023-2024爬取覆盖率对比数据)首次披露
  • HP ProLiant MicroServer Gen8 CPU支持列表
  • NY378固态MT29F32T08GSLBHL8-24QA:B
  • 大模型如何推理:从分词到答案一秒之内的旅程
  • 化工自吸泵实测评测:耐酸碱自吸泵/自吸污水泵/自吸离心泵/蒸发强制循环泵/蒸发混流泵/蒸发结晶循环泵/蒸发轴流泵/选择指南 - 优质品牌商家
  • 两个IO口,四根线!51单片机IIC控制LCD1602的究极偷懒方案!!!
  • CAD专业看图师手机版安装使用教程
  • AI Agent 艺术创作能力探索
  • 对你而言, Vibe Coding 的乐趣是什么?
  • 嵌入式Linux设备树:从源码结构到二进制格式的完整解析
  • 肌音信号导向的人体膝关节运动加速度估计方法【附代码】
  • Linux内核同步机制:从原子操作到RCU的实战指南
  • 写给前端的 CANN-ops-transformer:昇腾Transformer进阶算子库到底是啥?
  • 今日份学习51ing