4.集成学习之2.Boosting

集成学习 | 集成学习思想:Boosting Boosting思想:Adaboost(分类)更改x权重 | GBDT(分类/回归)算法更改y值 阅读详情

基于boosting思想的自适应增强方法

Adaboost最初的想法是由Robert E. Schapire在1990年提出的,这个想法叫做自适应增强方法。与Bagging相比,Boosting思想可以降低偏差。
在这里插入图片描述

如更新权重如下图:
在这里插入图片描述

我们用单一决策树建模:

## 我们用单一决策树建模:
from sklearn.ensemble import AdaBoostClassifier
tree = DecisionTreeClassifier(criterion='entropy',random_state=1,max_depth=1)
from sklearn.metrics import accuracy_score
tree = tree.fit(X_train,y_train)
y_train_pred = tree.predict(X_train)
y_test_pred = tree.predict(X_test)
tree_train = accuracy_score(y_train,y_train_pred)
tree_test = accuracy_score(y_test,y_test_pred)
print('Decision tree train/test accuracies %.3f/%.3f' % (tree_train,tree_test))

输出结果
在这里插入图片描述

我们使用Adaboost集成建模:

## 我们使用Adaboost集成建模:
ada = AdaBoostClassifier(base_estimator=tree,n_estimators=500,learning_rate=0.1,random_state=1)
ada = ada.fit(X_train,y_train)
y_train_pred = ada.predict(X_train)
y_test_pred = ada.predict(X_test)
ada_train = accuracy_score(y_train,y_train_pred)
ada_test = accuracy_score(y_test,y_test_pred)
print('Adaboost train/test accuracies %.3f/%.3f' % (ada_train,ada_test))

输出结果
在这里插入图片描述

我们观察下Adaboost与决策树的异同:

## 我们观察下Adaboost与决策树的异同
x_min = X_train[:, 0].min() - 1
x_max = X_train[:, 0].max() + 1
y_min = X_train[:, 1].min() - 1
y_max = X_train[:, 1].max() + 1
xx, yy = np.meshgrid(np.arange(x_min, x_max, 0.1),np.arange(y_min, y_max, 0.1))
f, axarr = plt.subplots(nrows=1, ncols=2,sharex='col',sharey='row',figsize=(12, 6))
for idx, clf, tt in zip([0, 1],[tree, ada],['Decision tree', 'Adaboost']):
    clf.fit(X_train, y_train)
    Z = clf.predict(np.c_[xx.ravel(), yy.ravel()])
    Z = Z.reshape(xx.shape)
    axarr[idx].contourf(xx, yy, Z, alpha=0.3)
    axarr[idx].scatter(X_train[y_train==0, 0],X_train[y_train==0, 1],c='blue', marker='^')
    axarr[idx].scatter(X_train[y_train==1, 0],X_train[y_train==1, 1],c='red', marker='o')
    axarr[idx].set_title(tt)
axarr[0].set_ylabel('Alcohol', fontsize=12)
plt.tight_layout()
plt.text(0, -0.2,s='OD280/OD315 of diluted wines',ha='center',va='center',fontsize=12,transform=axarr[1].transAxes)
plt.show()

输出结果
在这里插入图片描述

从结果图看起来,Adaboost决策边界比单层决策树复杂得多!

集成学习方法之Bagging,Boosting,Stacking         “团结就是力量,这力量是铁,这力量是钢… …”,小学学的一首歌,至今还刻骨铭心。“团结就是力量”,完美的阐述了机器学习中非常强大的集成学习方法的思想。其实,集成学习方法就这么简单,将多个模型组合在一起会得到更强大的模型。本篇就让我们一起来探讨比赛必用神技——集成学习方法(Ensemble Learning Method)。   &n... 阅读详情

相关推荐

集成学习算法总结----Boosting和Bagging

1、集成学习概述1.1 集成学习概述集成学习在机器学习算法中具有较高的准去率,不足之处就是模型的训练过程可能比较复杂,效率不是很高。目前接触较多的集成学习主要有2种:基于Boosting的和基于Bagging,前者的代表算法有Adaboost、GBDT、XGBOOST、后者的代表算法主要是随机森林。1.2 集成学习的主要思想 集成学习的主要思想是利用一定的手段学习出多个分类器,而且这多个分类器要求

哆啦A梦的博客 2万+

机器学习的boosting思想

机器学习常用到booting思想,通过一步一步向目标迈进 两种用此思想的向前分别算法: 每次训练一棵树,用此棵数训练的结果调整下一棵树的输入 1.adaboost 加大错误case(input data)的权重进行下次训练 最终模型的权重也会根据总体效果调整每棵的权重 for m round for n trees 调整input 进行训练 ...

u013523735的博客 788

集成学习之Bagging/Boosting分类和回归

集成学习 0.Official Description The goal of ensemble methods is to combine the predictions of several base estimators built with a given learning algorithm in order to improve generalizability / robustnes...

扫地小僧Tommy 4106

机器学习集成学习与模型融合

来源:Datawhale 本文约5955字,建议阅读10分钟。 本文介绍在Kaggle或者阿里天池上面大杀四方的数据科学比赛利器---集成学习。 对比过kaggle比赛上面的top10的模型,除了深度学习以外的模型基本上都是集成学习的产物。集成学习可谓是上分大杀器,今天就跟大家分享在Kaggle或者阿里天池上面大杀四方的数据科学比赛利器---集成学习。 一、什么是集成学习 正所谓“三个臭皮匠赛过诸葛亮”的道理,在机器学习数据挖掘的工程项目中,使用单一决策的弱分类器显然不是一个明智的选择,因为.

喜欢打酱油的老鸟 1195

集成学习—boosting和bagging原理及区别

集成学习 1.什么是Boosting 2.什么是Bagging 3.Bagging和Boosting的区别 1)偏差—方差 2)样本选择: 3)样例权重: 4)基学习器权重: 5)串、并行计算: 4 参考 喜欢请点赞! 集成学习 集成学习通过构建并结合多个学习器来完成学习任务,有时也被称为多分类器系统(multi-抽拉式私服而 system)、基于委员会的学习(commit...

weepon的博客 4430

【集成学习】Boosting策略典型算法原理

集成学习 集成学习是一种由多种弱学习器组合成强学习器的策略,主要分为3类:Boosting方法、Bagging方法、Stacking方法。 一、Boosting Boosting方法基于串行策略,新的学习器由旧的学习器生成。 代表算法有: AdaBoost 提升树BT 梯度提升树GBDT XGBoost Boosting算法要解决两个问题: Q1:如何改变样本数据的权值? Q2:如何将弱分...

土豆洋芋山药蛋的博客 2327

百题突击6:1,什么是集成学习算法? 2,集成学习主要有哪几种框架, 并简述它们的工作过程? 3,Boosting算法有哪两类,它们之间的区别是什么? 4,什么是偏差和方差?Bagging可以减少弱分

文章目录1,什么是集成学习算法?2,集成学习主要有哪几种框架, 并简述它们的工作过程?3,Boosting算法有哪两类,它们之间的区别是什么?4,什么是偏差和方差?5,为什么说Bagging可以减少弱分类器的方差,而Boosting 可以减少弱分类器的偏差? 1,什么是集成学习算法? 2,集成学习主要有哪几种框架, 并简述它们的工作过程? 3,Boosting算法有哪两类,它们之间的区别是什么? 4,什么是偏差和方差? 5,为什么说Bagging可以减少弱分类器的方差,而Boosting 可

MrCharles在优快云 1126

AdaBoost算法详细介绍

一、Boosting算法Boosting集成分类器包含多个非常简单的成员分类器,这些成员分类器的性能仅好于随机猜想,常被称为弱学习机。典型的弱学习机的例子就是单层决策树。Boosting算法主要针对难以区分的样本,弱学习机通过在分类错误的样本上进行学习来提高继承分类器的分类性能。Boosting与Bagging不同,在Boosting的初始化阶段采用的是无返回抽样从训练样本中随机抽取一个子集,而B...

修炼之路 2万+

【集成学习】Boosting算法详解

集成学习(Ensemble Learning)是一种通过结合多个模型的预测结果来提高整体预测性能的技术。相比于单个模型,集成学习通过多个基学习器的“集体智慧”来增强模型的泛化能力,通常能够提高模型的稳定性和准确性。Bagging:通过并行训练多个模型并对其结果进行平均或投票来减少方差Boosting:通过按顺序训练多个模型,每个模型都试图纠正前一个模型的错误,从而减少偏差Stacking:通过训练多个不同类型的基学习器,并将它们的输出作为特征输入到一个高层模型中,从而提升预测性能。

码农努力学习 3774

[机器学习] 专栏目录索引

目录 第一章 绪论 第一章 绪论 1.P问题、NP问题、NP完全问题和NP难问题 第二章 模型评估与选择 第二章 模型评估与选择 1.ROC、AUC、Precision、Recall、F1_score 第二章 模型评估与选择 2.ROC:roc_curve原理及源代码详解 第三章 线性模型 第三章 线性模型 1.线性回归 & 逻辑回归 & 线性判别分析LDA 第三章 线性模型 2.特征抽取——LDA线性判别分析(Linear Discriminate Analysis) 第

心宝的博客 415

【集成学习|Bagging、Boosting 和 Stacking】三种常见的集成学习算法的联系与区别?以及如何实现?附代码学习

【集成学习|Bagging、Boosting 和 Stacking】学习笔记!

985小水博的摸鱼日常 2896

【集成学习】:bagging和boosting算法及对比

转载于:bagging和boosting算法(集成学习算法) Bagging算法和Boosting区别和联系 机器学习笔记-集成学习之Bagging,Boosting,随机森林三者特性对比 前言 集成学习 定义:集成学习通过构建并结合多个学习器来完成学习任务。 分类:只包含同种类型的个体学习器,这样的集成是“同质”的,例如都...

Mr_health的博客 1万+

集成学习方法:Bagging与Boosting的应用与优势

集成学习是一种通过组合多个基本模型以提高预测性能的机器学习方法。Bagging(Bootstrap Aggregating)和Boosting是两种最常见的集成学习技术。本文将介绍这两种方法的原理、应用和优势。Bagging和Boosting是两种常见的集成学习方法,它们在处理不同类型的数据和问题时都具有独特的优势。合理选择适合的集成学习方法,可以显著提高模型的预测性能,从而在实际应用中取得更好的效果。希望本文对你有所帮助,欢迎在评论区分享你的想法和经验!

私聊前往站内信:https://i.youkuaiyun.com/#/msg/chat/weixin_44976692 4万+

集成学习之Boosting

集成学习之Boosting 1.boosting集成原理 1.1 什么是boosting 随着学习的积累从弱到强 简而言之:每新加入一个弱学习器,整体能力就会得到提升 代表算法:Adaboost,GBDT,XGBoost 1.2 实现过程: 1.训练第一个学习器 2.调整数据分布 3.训练第二个学习器 4.再次调整数据分布 5.依次训练学习器,调整数据分布 6.整体过程实现 关键点: 如何确认投票权重? 如何调整数据分布? AdaBoost的构

IT之一小佬的博客 1877

用LTspice仿真Buck电路输出电容:从参数计算到波形优化的全流程演示

本文详细介绍了使用LTspice仿真Buck电路输出电容的全流程,从理论计算到波形优化。通过解析关键参数如纹波电压、瞬态响应和ESR,结合工程计算方法和LTspice仿真技巧,帮助工程师优化Buck电路设计,解决输出纹波过大和瞬态响应不佳的问题。

night的博客 852

安卓开发者必看:Win11最新Fastboot驱动安装避坑指南(含Android Bootloader Interface选择技巧)

本文为安卓开发者提供了Windows 11系统下Fastboot驱动安装的详细指南,特别针对Android Bootloader Interface选择技巧和多设备并发连接时的驱动冲突问题。通过解析Windows 11的特殊驱动验证机制,推荐使用Google官方USB驱动,并提供安装流程、版本选择建议及疑难问题排查方法,帮助开发者高效完成开发环境配置。

sea99的博客 1332

机器学习之集成学习:bagging、boosting和stacking

一、什么是集成学习 集成学习,顾名思义就是将多个学习器结合起来以完成学习任务的一种学习思想。俗话说,三个臭皮匠,顶一个诸葛亮,集成学习就是运用了这种思想。一个模型的结果存在一定的随机性,那么就采用多个模型来抵消这种随机性,大家都说好才是真的好。所以理论上集成学习的思想可以提高模型的性能。 以分类任务为例,我们可以训练m个分类器,每个分类器可以采用相同的算法,也可以采用不同的算法。如果每个分类器均选择决策树算法,那么这个集成学习算法就叫做随机森林,如果各个分类器不一样,最终组合在一起的方法,称为Stack

梅菜扣肉 2286

pgpool-II踩坑日记两则

最近结合pgpool-II进行postgreSQL高可用的部署,过程非常煎熬,作为新手,公司也没有前辈熟悉postgreSQL,只能自己摸索。好在已经搞明白了,把困扰我很长时间的两个问题分享一下。 1. show pool_nodes 第一个问题就是 show pool_nodes 的使用,照着教程建好后,在哪里执行这个指令呢?我在pg服务器上怎么执行这个指令都显示 ERROR: unrecognized configuration parameter "pool_nodes",一度怀疑人生。翻阅了很多资料

zhaizhai6_6的博客 4540

集成学习:Boosting

Boosting 是一种强大的集成学习技术,旨在通过组合多个弱分类器(通常是决策树)来构建一个强大的学习模型。它的核心思想是逐步训练模型,每一步针对,从而提高整体模型的性能。Boosting 方法通常能在分类和回归任务中取得高准确性,广泛应用于机器学习和深度学习领域。

Wei_sx的博客 1181

从CCD数据上报看wxHOOK的封号风险与规避

本文深入分析了微信CCD数据上报机制对wxHOOK的检测逻辑与封号风险,揭示了调试器路径暴露、非白名单DLL加载和内存校验失败等关键风险点。通过实战案例和规避方案,帮助开发者理解如何安全使用wxHOOK技术,避免封号风险,包括内存镜像欺骗、内核级隐蔽和硬件辅助方案等高级技巧。

weixin_27875131的博客 632

两张 300I Duo 部署 Qwen3.5‑32B

开发者成功使用两张华为300IDuo(共4颗Ascend310P3芯片)部署Qwen3/Qwen3.5的30B/32B模型,并公开详细步骤。关键点包括:硬件需两张300IDuo(每芯片44GB显存),软件需CANN≥24.1和MindIE2.3.0专用镜像。部署流程涵盖驱动安装、模型下载(需修改为FP16格式)、容器启动、张量并行配置(TP=4)等环节。实测显示每芯片显存占用20-35GB,系统稳定运行。该方案已在知乎等平台验证可行,适用于Qwen3.5-32B等同类模型。

evering的博客 2257

集成学习方法简介:bagging、boosting、stacking

一、集成学习 集成学习是将若干个学习器(分类器、回归器)组合之后产生一个新的学习器。 一般来说,集成学习可以分为三类: bagging:减少方差,即防止过拟合 boosting:减少偏差,即提高训练样本正确率 stacking:提升预测结果,即提高验证精度 弱分类器(weak learner)是指那些分类准确率值只稍好于随机猜测的分类器(error<0.5); 集成算法的成功在于保证弱分类器...

qq_39967296的博客 1811

YOLOv8/v9工业零件缺陷检测实战指南:从原理到产线部署

摘要:本文系统介绍基于YOLOv8/v9的工业零件缺陷检测技术,从工业质检背景与需求出发,详解缺陷检测原理、算法构建与模型训练,提供从数据集准备到移动端部署的全流程实操方案。包含多尺度检测、纹理分析等高级技术,适配工业相机的环境优化策略,以及完整质检系统代码实现。适合工业视觉领域新手与进阶开发者,助力快速构建高鲁棒性的缺陷检测系统。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1306

你想看的集成学习之bagging和boosting区别特征及例子

这篇文章主要讲述集成学习的bagging和boosting。 首先bagging和boosting是集成学习的两个大家族,每个家族也包括很多成员,例如boosting包括adaboost、xgboost,bagging也有RandomForest等方法。既然bagging和boosting是这些算法的基础,那他们的思想是什么呢? Bagging和Boosting的理解与思想 简单总结Ba...

blank_tj的博客 5471

芒果YOLOv8改进160:姿态估计Head篇:即插即用|轻量化非对称多级压缩LOADH旋转检测头,原创改进适配YOLOv8高效检测头,检测头新颖改进,全网首发独一份

芒果YOLOv8改进159:OBB旋转检测头Head篇:即插即用|轻量化非对称多级压缩LOADH旋转检测头,原创改进适配YOLOv8高效检测头,检测头新颖改进,全网首发独一份

包括YOLOv5、YOLOv7、YOLOv8等模型改进 812

OsgEarth —— 笔记6 - 开发阶段加入漫游飞行(附源码)

效果      视频地址   源码 源码下载请私信   代码      代码相关内容:           OSG —— 笔记1 - 指令调用模型           OsgEarth —— 笔记1 - 创建地球的earth文件           OsgEarth —— 笔记2 - Qt窗口加载earth地球(附源码)           OsgEarth —— 笔记3 - 为地

1896
上一篇: 4.集成学习之1.Bagging
下一篇: 4.集成学习之3.Stacking
暮-成-雪
博客等级 码龄12年 5328粉丝 319原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值