机器学习之集成学习

一:概念

顾名思义集成学习就是用多个其他的算法结合起来使用

对于“其他算法”有同类和同质的区别,同质指的是所用的算法都是同一类型的,比如决策树和神经网络,这种也叫基学习器。反之亦然,但一般使用的是同质的。

而集成学习要做的就是将这些方法结合起来,使得学习器有更好的泛化性能。

1.Bagging方法:

Bagging是利用自助采样生成多个有差异的训练集,训练出一系列个体学习器。根据偏差-方差分解定理,模型预测误差可拆分为偏差、方差和不可约误差三部分。Bagging通过引入随机性降低个体学习器间的相关性,进而降低集成模型的方差,提高整体预测性能。

对训练集进行抽样,将抽样的结果用于训练,并行,独立训练。

抽样是有放回的对原始数据进行均匀抽样,利用每次抽样的数据集训练模型,然后每次抽样会有一个模型,最终的那个模型对每次生成的模型进行投票

Boosting方法:

利用训练集练出模型,根据本次模型的预测结果调整训练集,然后利用调整后的训练集训练下一个模型

二:随机森林

Bagging+决策树=随机森林

将多个决策树结合在一起,每次数据集是随机的有放回的选出,同时随机选出部分特征作为输入,使用该算法被称为随机森林算法,可以看到随机森林算法是以决策树为估计器的Bagging算法。也就是上面写道的同质的算法,这里只用到了决策树来作为其他算法。

2.算法步骤:

假设有一个数据集T是N行M列(在表格中每一行就是一个特征),如果需要一个大小为K(自己定义的)的随机森林

1.变量随机森林大小K次

2.每一次遍历从数据集T中放回抽样的方式(Bagging)抽取n次形成一个新的训练集D

3.随机选择m(m<M)个特征

4.使用新的训练集D和m个特征,训练出一个完整的决策树

5.循环结束以后就得到一个有K个决策树的随机森林了

3.优缺点

优点:

对于很多种资料,可以产生高准确度的分类器
可以处理大量的输入变量
可以在决定类别时,评估变量的重要性
在建造森林时,可以在内部对于一般化后的误差产生不偏差的估计
包含一个好方法可以估计丢失的资料,并且如果有很大一部分的资料丢失,仍可以维持准确度
对于不平衡的分类资料集来说,可以平衡误差
可被延伸应用在未标记的资料上,这类资料通常是使用非监督式聚类,也可侦测偏离者和观看资料
学习过程很快速

缺点:

牺牲决策树的可解释性

在某些噪声较大的分类或者回归问题上会过拟合

在多个分类变量的问题中,随机森林可能无法提高基学习器的准确性


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/362452.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Redis】三大Redis内存分析工具介绍(Redisinsight、RDR、RMA)

一、RedisInsight工具介绍 RedisInsight是一款Redis官方开源的可视化管理工具&#xff0c;旨在帮助开发人员和管理员更轻松地设计、开发和优化Redis应用程序。以下是关于RedisInsight的详细介绍&#xff1a; 1、工具概述 定义&#xff1a;RedisInsight是一个直观且高效的Red…

数据库层持久化

数据持久化层 冷热分离 冷热分离&#xff1a;将常用的“热”数据和不常使用的“冷”数据分开存储 冷热分离就是在处理数据时将数据库分成冷库和热库&#xff0c;冷库存放那些走到终态、不常使用的数据&#xff0c;热库存放还需要修改、经常使用的数据 业务需求出现了以下情况…

基于ssh框架的个人博客源码

基于ssh的个人博客源码&#xff0c;页面清爽简洁&#xff0c;原先有部分bug,运行不了&#xff0c;现已修复 1.博客首页 &#xff08;本地访问地址 :localhost:8080/Blog/index/index&#xff09; 2.关于我 3.慢生活 4.留言板 5.我的相册 微信扫码下载源码

【PTA】7-1 网红点打卡攻略(C/C++)代码实现 反思

解题细节分析&#xff1a; 0.比较图的两种存储方法&#xff0c;通过邻接矩阵存储更便于查找给定两点之间的关系 1.注意理解清楚题义&#xff1a;“访问所有网红点”中所有不是指攻略中所有&#xff0c;而是存在的全部的网红点 代码见下&#xff1a;// 需要注明的是&#xff…

M4V文件损坏无法播放?一招轻松修复损坏视频文件!

M4V是一个标准视频文件格式&#xff0c;此种格式常在iPod 、 iPhone 和 PlayStation Portable等设备上使用&#xff0c;同时此格式基于MPEG-4编码第二版&#xff0c;是MP4格式的一种特殊类型&#xff0c;有时可能会因为各种原因而损坏&#xff0c;导致无法正常播放。M4V文件出现…

13 Redis-- MySQL 和 Redis 的数据一致性

Redis-- MySQL 和 Redis 的数据一致性 先抛一下结论&#xff1a;在满足实时性的条件下&#xff0c;不存在两者完全保存一致的方案&#xff0c;只有最终一致性方案。

PID算法介绍以及代码实现过程说明

写在正文之前 在上一篇文章就说会在这两天会基于PID写一个文章&#xff0c;这里的原理部分值得大家都看一下&#xff0c;代码部分的实现是基于python的&#xff0c;但是对于使用其他编程语言的朋友&#xff0c;由于我写的很通俗易懂&#xff0c;所以也值得借鉴。 一、PID算法…

ARM裸机:地址映射

S5PV210的地址映射详解 什么是地址映射&#xff1f; S5PV210属于ARM Cortex-A8架构&#xff0c;32位CPU&#xff0c;CPU设计时就有32根地址线&32根数据线。 32根地址线决定了CPU的地址空间为4G&#xff0c;那么这4G空间如何分配使用&#xff1f;这个问题就是内存映射问题。…

第一后裔The First Descendant官方推荐配置一览

备受玩家期待的免费刷宝游戏第一后裔即将在7月2日上线&#xff0c;玩家可以在游戏中体验不同个性概念和战斗风格的角色&#xff0c;感受The First Descendant世界里酷炫的战斗体验&#xff0c;守护“英格里斯大陆”。很多玩家担心电脑配置不够&#xff0c;游戏上线后无法流畅游…

探索FlowUs息流:个人和团队知识管理稳定解决方案|FlowUs稳定保障你的笔记安全无忧

FlowUs息流&#xff1a;稳定运营保障你的笔记安全无忧 在知识管理工具的选择上&#xff0c;稳定性是用户最关心的问题之一。FlowUs息流以其稳定的运营记录&#xff0c;为用户提供了一个可靠的工作环境。我们深知&#xff0c;一个知识管理平台的稳定性直接影响到团队的生产力和…

Java程序员接单的十条“野路子”,分分钟收入20K!

Java程序员除了主业工作外&#xff0c;也要适当扩展兼职接单这条路。毕竟Java接单可以说是Java程序员进行技术变现的最佳方式之一。 因为Java程序员兼职接单的难度相对更低&#xff0c;单量也比较可观&#xff0c;最重要的是性价比也很顶&#xff0c;且听我一一道来&#xff1a…

springboot 集成阿里云 OSS

引入依赖 <!-- 阿里云oss依赖 --> <dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.9.1</version> </dependency><?xml version"1.0" encoding"…

【图书推荐】CPython设计与实现“适合所有Python工程师阅读的书籍”

目录 一、图书推荐 |【CPython设计与实现】 1.1、书籍介绍 1.2、内容简介 1.3、适合哪些人阅读 1.4、作者译者简介 1.5、购买链接 一、图书推荐 |【CPython设计与实现】 "深入Python核心&#xff0c;揭秘CPython的设计智慧&#xff01;&#x1f4d6; 对于每一位热衷…

前端主流框架-JQuery

Javascript DOM 1 DOM模型Document对象 1.1 DOM模型 DOM【Document Object Model】 &#xff1a;文档对象模型。直白的讲就是通过程序解析结构化文档&#xff08;xml&#xff0c;html&#xff09;的时候&#xff0c;在内存中生成的包含当前结构化文档中所有内容的一个对象模型…

消失的80后都去哪里了

曾经被贴上各种标签的80后&#xff0c;最大的已经44岁&#xff0c;最小的也都35岁了&#xff0c;都已人到中年了。 在80后眼里的弟弟妹妹的90后&#xff0c;已经奔四了&#xff0c;而觉得与80后有代差的95后已是职场主力&#xff0c;而某些80后的孩子00后也已经开始陆续进入职场…

使用Python实现深度学习模型通常涉及以下几个步骤

学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……&#xff09; 2、学会Oracle数据库入门到入土用法(创作中……&#xff09; 3、手把手教你开发炫酷的vbs脚本制作(完善中……&#xff09; 4、牛逼哄哄的 IDEA编程利器技巧(编写中……&#xff09; 5、面经吐血整理的 面试技…

【Vue】集成富文本编辑器

这文章使用的是wangeditor插件&#xff0c;官网地址&#xff1a;wangEditor&#xff0c;这个比较简单 安装 npm i wangeditor --save 使用 <div id"editor"></div>import E from "wangeditor"const editor new E("#editor") e…

猫狗识别—静态图像识别

猫狗识别—静态图像识别 1. 导入必要的库:2. 设置数据目录和模型路径:3. 定义图像转换4. 使用GPU5. 加载没有预训练权重的ResNet模型6. 创建Tkinter窗口:7.定义选择图片的函数:8.定义预测图片的函数:9.退出程序的函数:10.创建按钮:11.运行Tkinter事件循环:12. 完整代码&#xf…

基于YOLOv5+pyqt5的口罩佩戴检测系统(PyQT页面+YOLOv5模型+数据集)

简介 在各种工作环境和公共场所,确保人们正确佩戴口罩对个人防护和公共卫生至关重要,尤其是在医疗设施、制造业车间和拥挤的公共交通中。为了满足这一需求,我们开发了一种基于YOLOv5目标检测模型的口罩佩戴检测系统。本项目不仅实现了高精度的口罩佩戴检测,还设计了一个可…

第四天 怎么又迟到了呀 哎啥时候来准时上个课呀

泛型编程 Traits实现&#xff0c;是什么 泛型编程&#xff08;Generic Programming&#xff09;是一种通过编写与特定类型无关的代码来实现代码复用和抽象的编程范式。 在C中&#xff0c;模板&#xff08;Templates&#xff09;是实现泛型编程的主要手段。 Traits&#xff0…