首页 > 其他分享 >1.8 - 集成学习

1.8 - 集成学习

时间:2024-04-03 20:26:14浏览次数:24  
标签:集成 迭代 模型 样本 1.8 学习 拟合 决策树

1.集成学习思想

1.1 Bagging

  用一堆弱学习器,分别去解决同一个分类或回归问题,最终 投票决定分类结果 或 取均值决定回归结果。保证弱学习器的多样性。训练不同模型用的数据集采用【有放回随机抽样】。

1.2 随机森林

  基学习器是 决策树,由原来的在所有特征的所有可能分裂点选取最佳分裂点,改成 每次从K个特征的所有可能分裂点选取最佳分裂点。重复M次,组成M棵决策树的随机森林模型。

  训练不同决策树采用的数据集采用 【有放回随机抽样】。

  随机森林过拟合问题:随机森林中决策树的数量可以控制过拟合问题。决策树数量过大,会过拟合(因为不断的对数据集进行学习,虽然学习器比较弱,但是数量多了还是可能会学习到多余的无效特征);决策树数量过低,会欠拟合。

2. 提升学习

  提升学习是一种迭代算法,后面的弱学习器是在前面的弱学习器的基础上迭代的。

2.1 AdaBoost(主要用于分类)

  每轮迭代会在数据集上产生一个新的学习器,学习器会对所有的训练样本进行预测并为每个样本分配一个权重,样本被预测得越正确,则这个样本在下一轮训练中占据得权重越低,反之,样本被预测的越错误,该样本在下一轮训练中被分配得权重越高,重复迭代过程,直到 【错误率足够小或达到最大迭代次数】 停止迭代。

  最终得AdaBoost模型函数,每个弱学习器都会分配一个权重系数,累加组成最终得输出。在此基础上,还可以对总模型中得每个弱学习器乘一个 学习率 参数,这样可以控制最终总模型中学习器的个数,从而达到控制 过拟合和欠拟合 的目的。

2.2 GBDT(可用于分类和回归)

  首先确定损失函数,然后给定一个常数函数作为GBDT的第一个弱学习器,然后更新 当前总学习器下每个样本的 损失函数负梯度值 作为样本的新目标属性,然后在此基础上训练新的决策树,重复迭代直到 【到达最大迭代次数】 停止迭代。 

  整个过程相当于梯度下降的过程,每经过一颗决策树,损失函数就会变小一些,总的模型也会预测的更好一些。无论分类还是回归问题,GBDT的基学习器都是 【CART回归树】,决策树的理念就是将整体的信息熵降到最低,而这里只是将信息熵变成了损失函数负梯度值,梯度降到最低损失最小,而CART回归树用的是均方误差MSE来衡量信息增益,而均方误差在这里对应整体样本的预测损失也是合理的。

  最终得GBDT模型函数,每个弱学习器都会分配一个权重系数,累加组成最终得输出。在此基础上,还可以对总模型中得每个弱学习器乘一个 学习率 参数,这样可以控制最终总模型中学习器的个数,从而达到控制 过拟合和欠拟合 的目的。

2.2.1 XGBoost

  对GBDT的优化,引入了正则项。

2.2.2 LightGBM

  工业海量数据场景中,GBDT不能将全部数据都装入内存,而反复的磁盘IO是很耗时的,LightGBM在上述基础上进一步优化,使模型可以用于工业大数据场景。

实现方法:XGBDT在选择分裂点的时候,会暴力枚举所有样本中的分裂点;LightGBM则先将所有数据分桶,然后只在桶间选择最佳的分裂点。

3. Stacking

  先使用多个最佳超参数的模型 通过K折验证的方式 获取所有训练数据的预测结果,这多个模型组成了Stacking的基学习器,在对这多个基学习器的预测结果组合训练出一个元学习器,得到最终的预测结果。

 

标签:集成,迭代,模型,样本,1.8,学习,拟合,决策树
From: https://www.cnblogs.com/zhangzhenw/p/18113332

相关文章

  • 基于深度学习的植物病毒检测系统(网页版+YOLOv8/v7/v6/v5代码+训练数据集)
    摘要:本文深入研究了基于YOLOv8/v7/v6/v5的植物病毒检测系统,核心采用YOLOv8并整合了YOLOv7、YOLOv6、YOLOv5算法,进行性能指标对比;详述了国内外研究现状、数据集处理、算法原理、模型构建与训练代码,及基于Streamlit的交互式Web应用界面设计。在Web网页中可以支持图像、视频和实时摄......
  • 基于深度学习的稻田虫害检测系统(网页版+YOLOv8/v7/v6/v5代码+训练数据集)
    摘要:本文深入研究了基于YOLOv8/v7/v6/v5的稻田虫害检测系统,核心采用YOLOv8并整合了YOLOv7、YOLOv6、YOLOv5算法,进行性能指标对比;详述了国内外研究现状、数据集处理、算法原理、模型构建与训练代码,及基于Streamlit的交互式Web应用界面设计。在Web网页中可以支持图像、视频和实时摄......
  • MarkDown学习
    MarkDown学习二级标题三级标题四级标题字体HelloworldHelloworldHelloworld~Helloworld引用选择程序狗机器狗#图片百度统计点击跳转列表ABCABC表格姓名|......
  • 基于深度学习的遥感目标检测系统(网页版+YOLOv8/v7/v6/v5代码+训练数据集)
    摘要:本文深入研究了基于YOLOv8/v7/v6/v5的遥感目标检测系统,核心采用YOLOv8并整合了YOLOv7、YOLOv6、YOLOv5算法,进行性能指标对比;详述了国内外研究现状、数据集处理、算法原理、模型构建与训练代码,及基于Streamlit的交互式Web应用界面设计。在Web网页中可以支持图像、视频和实时摄......
  • 深度学习之详解常见梯度算法(概念、公式、原理、算法实现过程)
    目录前言一、如何实现梯度下降?二、梯度计算三、常见的梯度公式及梯度算法常见的梯度公式:1.标量对向量的梯度:2.标量对矩阵的梯度:3.向量对标量的梯度:常见梯度算法:四、常见梯度算法实现 1、批量梯度下降算法实现函数2、随机梯度下降算法实现函数 3、小批量梯度......
  • 黑客(网络安全)技术自学——高效学习
    01什么是网络安全网络安全可以基于攻击和防御视角来分类,我们经常听到的“红队”、“渗透测试”等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。无论网络、Web、移动、桌面、云等哪个领域,都有攻与防两面性,例如Web安全技术,既有Web渗透,也有W......
  • 吴恩达2022机器学习专项课程(一) 4.6 运行梯度下降&第一周课程实验:线性回归的梯度下降
    问题预览/关键词更新梯度下降对模型拟合,等高线图,3d空间图的变化。什么是批量梯度下降。实验目标计算梯度运行梯度下降梯度下降迭代次数和成本函数的关系可视化模型预测在等高线图上的梯度下降学习率过大报错问题笔记1.模型拟合,等高线图,3d空间图的变化3.5课节有一样的图,......
  • 基于深度学习的肿瘤图像检测系统(网页版+YOLOv8/v7/v6/v5代码+训练数据集)
    摘要:在本博客中,我们深入探讨了基于YOLOv8/v7/v6/v5的肿瘤图像检测系统。核心上,我们采用了最新的YOLOv8技术,并将其与YOLOv7、YOLOv6、YOLOv5算法进行了综合整合和性能指标对比分析。我们详细阐述了当前国内外在此领域的研究现状、数据集的处理方法、算法的原理、模型构建过程以及训......
  • 基于深度学习的个人防具检测系统(网页版+YOLOv8/v7/v6/v5代码+训练数据集)
    摘要:本文深入研究了基于YOLOv8/v7/v6/v5的个人防具检测系统,核心采用YOLOv8并整合了YOLOv7、YOLOv6、YOLOv5算法,进行性能指标对比;详述了国内外研究现状、数据集处理、算法原理、模型构建与训练代码,及基于Streamlit的交互式Web应用界面设计。在Web网页中可以支持图像、视频和实时摄......
  • Ajax的重要知识点:全是干货,新手学习,老手回顾
    一,准备知识1、Ajax优缺点优点:可以不刷新页面与服务器通信可以根据用户事件更新部分页面内容缺点:无浏览记录,无法回退存在跨域问题SEO不友好2、HTTP协议超文本传输协议,规定了浏览器与万维网服务器之间的交换规则,主要约定了两块内容:请求和响应。①.请求报文(重点......