oob(out-of-bag)和关于bagging的更多讨论

2024-04-02 03:32
文章标签 讨论 bag bagging oob

本文主要是介绍oob(out-of-bag)和关于bagging的更多讨论,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述不用 train_test_split

#%%  使用oobfrom sklearn.tree import DecisionTreeClassifier
from sklearn.ensemble import BaggingClassifierbagging_clf = BaggingClassifier(DecisionTreeClassifier(),n_estimators=500,max_samples=100,  # 集成500个决策树这样的子模型,每个子模型要看100个样本数bootstrap=True,oob_score=True)   # bootstrap=True,放回取样   oob_score=True,记录哪些被取到 
bagging_clf.fit(X,y)bagging_clf.oob_score_

结果:0.918
在这里插入图片描述n_jobs=-1,使用所有内核并行操作,观察运行时间

%%time
bagging_clf = BaggingClassifier(DecisionTreeClassifier(),n_estimators=500,max_samples=100,  # 集成500个决策树这样的子模型,每个子模型要看100个样本数bootstrap=True,oob_score=True)   # 选择 True ,放回取样
bagging_clf.fit(X,y)

结果:Wall time: 914 ms

#%% n_jobs
%%time
bagging_clf = BaggingClassifier(DecisionTreeClassifier(),n_estimators=500,max_samples=100,  # 集成500个决策树这样的子模型,每个子模型要看100个样本数bootstrap=True,oob_score=True,    # 选择 True ,放回取样n_jobs=-1)   
bagging_clf.fit(X,y)

结果:Wall time: 527 ms

在这里插入图片描述
针对特征进行随机采样

random_subspaces_clf = BaggingClassifier(DecisionTreeClassifier(),n_estimators=500,max_samples=500,  bootstrap=True,oob_score=True,n_jobs=-1,max_features=1,bootstrap_features=True)   # 取一个特征,  选择 True ,放回取样
random_subspaces_clf.fit(X,y)
random_subspaces_clf.oob_score_

结果:0.83

既针对样本,又针对特征进行随机采样

random_patches_clf = BaggingClassifier(DecisionTreeClassifier(),n_estimators=500,max_samples=100,  # 集成500个决策树这样的子模型,每个子模型要看100个样本数bootstrap=True,oob_score=True,n_jobs=-1,max_features=1,bootstrap_features=True)   # 取一个特征,  选择 True ,放回取样
random_patches_clf.fit(X,y)
random_patches_clf.oob_score_

结果:0.856

这篇关于oob(out-of-bag)和关于bagging的更多讨论的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/868842

相关文章

聊聊分布式,再讨论分布式解决方案

前言 最近很久没有写博客了,一方面是因为公司事情最近比较忙,另外一方面是因为在进行 CAP 的下一阶段的开发工作,不过目前已经告一段落了。 接下来还是开始我们今天的话题,说说分布式事务,或者说是我眼中的分布式事务,因为每个人可能对其的理解都不一样。 分布式事务是企业集成中的一个技术难点,也是每一个分布式系统架构中都会涉及到的一个东西,特别是在微服务架构中,几乎可以说是无法避免,本文就分布式事

如何利用ChatGPT提升学术论文讨论部分的撰写质量和效率

大家好,感谢关注。我是七哥,一个在高校里不务正业,折腾学术科研AI实操的学术人。关于使用ChatGPT等AI学术科研的相关问题可以和作者七哥(yida985)交流,多多交流,相互成就,共同进步,为大家带来最酷最有效的智能AI学术科研写作攻略。经过数月爆肝,终于完成学术AI使用教程,估计也有个50万字的详细操作指南。跟着一步一步操作,借助ChatGPT做学术、干科研、写论文、课题申报都变得超简单。欢

图形API学习工程(12):讨论当前工程里同步CPU与GPU的方式

工程GIT地址:https://gitee.com/yaksue/yaksue-graphics 简单讨论CPU和GPU间的交互 《DX12龙书》在【4.2 CPU与GPU间的交互】章节中讨论了这个问题,简单来说: 为了最佳性能,CPU和GPU这两种处理器应该尽量同时工作,少“同步”。因为“同步”意味着一种处理器以空闲状态等待另一种处理器,即它破坏了“并行”。 但有时,又不得不进行二者的同步

Bagging: 数量,而不是质量。

由 AI 生成:过度简化的树、引导聚合、集成方法、弱学习器、减少方差 集成方法 — 数量,而不是质量 一、说明         机器学习中的集成方法是指组合多个模型以提高预测性能的技术。集成方法背后的基本思想是聚合多个基础模型(通常称为弱学习器)的预测,以生成通常比任何单个模型更准确、更稳健的最终预测。一般而言,我们通常遵循质量胜于数量的原则。然而,在这种情况下,事实证

什么是机器学习中的 Bagging?带有示例的指南

文章目录 一、说明二、理解集成学习2.1 什么是 Bagging?2.2 Bagging 与 Boosting2.3 套袋的优点 三、Python 中的 Bagging:简短教程3.1 数据集3.2 训练机器学习模型3.3 模型评估 四、装袋分类器4.1 评估集成模型4.2 最佳实践和技巧 五、结论 ​ 一、说明    集成方法是机器学习中强大的技术,它可以结合多种模型来提高

讨论“get”和“post”安全性

get”安全,还是“post”安全?这或许是大家总结两者必须要分析的内容,因为这涉及到我们将内容从浏览器传送到服务器的安全性,选择不当将会带来巨大的不安全因素,从而可能带来巨大的损失。这篇博客,我将阐述一下,当然更多的还是希望各位大神发表一下见解,讨论一下下!             首先,我们来看一下两者最基本的区别: GET请求通过URL(请求行)提交数据,在URL中可以看

Android 疑难问题讨论及面试题

https://github.com/android-cn/android-discuss/issues?page=1&q=is%3Aissue+is%3Aopen

【机器学习】集成学习的基本概念、Bagging和Boosting的区别以及集成学习方法在python中的运用(含python代码)

引言 集成学习是一种机器学习方法,它通过结合多个基本模型(通常称为“弱学习器”)来构建一个更加强大或更可靠的模型(“强学习器”) 文章目录 引言一、集成学习1.1 集成学习的核心思想1.2 常见的集成学习方法1.2.1 Bagging(装袋)1.2.2 Boosting(提升)1.2.3 Stacking(堆叠) 1.3 集成学习的优势1.4 集成学习的挑战1.5 总结 二、Bag

讨论运维监控工具的普及程度

在讨论运维监控工具的普及程度时,加入PIGOSS BSM产品的分析是非常有意义的,因为PIGOSS BSM是一款在中国市场具有一定影响力的运维监控工具。 PIGOSS BSM运维监控工具是一款综合性的IT运维监控解决方案,它能够对多层次的IT资源进行监测,包括但不限于性能监测、事件管理、报表管理等功能模块。PIGOSS BSM的一个独特之处在于其拓扑关联配置工具,这使得用户可以根据自身的I

8种进行简单线性回归的方法分析与讨论

以下是八种进行简单线性回归的方法及其分析与讨论: 二乘法(OLS): 分析:通过化预测值与实际值之间的平方误差来估计回归系数。 讨论:简单直观,适用于大多数线性回归问题。但对于数据中存在异常值或噪声时,可能不够鲁棒。 梯度下降法: 分析:通过迭代优化算法调整回归系数,以化损失函数。 讨论:适用于大规模数据集和复杂模型,但需要选择合适的学习率,并可能需要较长的训练时间。 正规方程法: