C2-4.3.1 多个决策树——随机森林

news2024/11/20 6:14:11

C2-4.3.1 多个决策树——随机森林

参考链接

1、为什么要使用多个决策树——随机森林?

  • 决策树的缺点:

A small change in the data can cause a large change in the structure of the decision tree causing instability

即:对数据集 中微小的变化敏感,往往一棵树的结果不是那么理想—— 通过多个决策树的组合,让它对数据变化没那么敏感,得到更加准确的结果

  • 举一个例子:

在下图中,我们仅仅改变了一个训练示例,但是由于这个训练示例的改变,造成了 要拆分的 最高 ‘信息增益’——变成了胡子(原来是耳朵的形状)

所以就变成了右侧的决策树,使得左右两侧变成了完全不同的决策树。——训练一堆不同的决策树往往会得到更好的结果——引出 “随机森林”

在这里插入图片描述

在这里插入图片描述

  • 多个决策树工作原理:
    • 第一个树通过预测——结果是 猫
    • 第二个树通过预测——结果不是 猫
    • 第三个树通过预测——结果是 猫

最终结果预测:取最多的结果——是猫

随机森林是基于树的机器学习算法,该算法利用了多棵决策树的力量来进行决策。顾名思义,它是由一片树木组成的“森林”!

但是为什么要称其为“随机森林”呢?这是因为它是随机创造的决策树组成的森林。决策树中的每一个节点是特征的一个随机子集,用于计算输出。随机森林将单个决策树的输出整合起来生成最后的输出结果。

简单来说:

“随机森林算法用多棵(随机生成的)决策树来生成最后的输出结果。”

img

2、随机森林

  • 随机森林是由很多决策树组成的,不同决策树之间不存在相关性。

  • 当我们执行分类任务时,新的输入样本进入,对森林中的每一棵决策树分别进行判断和分类。每棵决策树都会得到自己的分类结果,而决策树哪个分类结果最多,那么随机森林就会用这个结果作为最终结果。

2.1构建随机森林的 4 个步骤

构建随机森林的 4 个步骤

Ste1:有放回的随机抽样

  • 将样本量为N的样本进行N次放回抽取,每次抽取一个样本,最终形成N个样本。将选取的N个样本作为决策树根节点的样本来训练一棵决策树。决策树。

  • 如下:是有放回的随机抽样的结果

在这里插入图片描述

通过 不同的随机抽样的结果,将选取的N个样本作为决策树根节点的样本来训练一棵决策树。决策树。

不同的随机抽样的 训练集,得到了不同的决策树。

在这里插入图片描述

Step2:随机选取属性,作为分裂节点。

  • 当每个样本有M(比如100个)个属性时,当决策树的每个节点需要分裂时,从这M个属性中随机选择m(10个)个属性,并满足条件m << M。然后从这些中使用一定的策略(如信息增益) m 个属性,选择 1 个属性作为节点的分裂属性

在这里插入图片描述

  • m 的选择通常如下,就是图中的k :

在这里插入图片描述

Step3 :重复步骤2

  • 在决策树形成过程中,每个节点都要按照步骤2进行分裂(很容易理解,如果该节点选择的下一个属性是其父节点刚刚分裂时使用的属性,则该节点已经达到叶子节点,无需继续分裂)。直到不能再分开为止。请注意,在整个决策树的形成过程中没有进行任何修剪。

Step4 : 构建随机森林

  • 根据步骤1~3,创建大量决策树,构成随机森林。

3、随机森林的4个应用方向——(前提:结构化数据)

随机森林的4个应用方向

随机森连——适用于“结构化数据”

随机森林可以用在很多地方:

  1. 离散值的分类
  2. 连续值的回归
  3. 无监督学习聚类
  4. 异常点检测

4、※ XGBoot 增强随机森林

  • 用的特别多,尤其是在Kaggle比赛等或者实际项目中
  • 和 随机森林相比:不同的地方是,随机森林每次都是有放回的抽取(概率是 1/m), 但是 XGBoot 不同,从第二次开始进行针对性的训练。先选取前一轮有错误的数据,再加上随机抽取的数据进行训练。更好的解决问题。

在这里插入图片描述

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据库:如何取消mysql的密码

因为调试MySQL数据接口&#xff0c;总是需要输入密码很烦&#xff0c;所以决定取消mysql的root密码&#xff0c; 网上推荐的有两种方法&#xff1a; 1、mysql命令 SET PASSWORD FOR rootlocalhostPASSWORD(); 2、运行 mysqladmin 命令 mysqladmin -u root -p password …

【源码阅读】交易池txs_pool

重要接口&#xff1a; ITxsPool的实现&#xff1a; type TxsPool struct {config TxsPoolConfigchainconfig *params.ChainConfigbc common.IBlockChaincurrentState *state.IntraBlockStatependingNonces *txNoncercurrentMaxGas uint64ctx context.Context //cance…

密码学(一)

文章目录 前言一、Cryptographic Primitives二、Cryptographic Keys2.1 Symmetric key cryptography2.2 asymmetric key cryptography 三、Confidentiality3.1 Symmetric key encryption algorithms3.2 asymmetric key block ciphers3.3 其他 四、Integrity4.1 secure hashing …

【语义解析:连接自然语言与机器智能的桥梁】

语义解析&#xff1a;连接自然语言与机器智能的桥梁 语义解析技术可以提高人机交互的效率和准确性&#xff0c;在自然语言处理、数据分析、智能客服、智能家居等领域都有广泛的应用前景。特别是在大数据时代&#xff0c;语义解析能够帮助企业更快速地从大量的数据中获取有用的…

Helix QAC 2023.4 新版支持C++20语言,带来更多性能提升!

Helix QAC 2023.4 新增功能 Helix QAC 2023.4全面支持MISRA C:2023规则&#xff0c;涵盖100%的指南。此版本还加强了对C20语言的支持&#xff0c;改进了数据流分析性能&#xff0c;并在整个产品中增加了多项用户体验改进。 增强的C20支持 此版本新增了对以下语言特性的支持&a…

永久关闭Windows更新的5种方法

很多家用电脑&#xff0c;如果系统自动更新的话&#xff0c;会变得越来越卡顿&#xff0c;且硬件型号兼容也并不完美。那么我们该如何彻底关闭Win11的自动更新呢&#xff1f;以下准备了5种方法&#xff0c;您可以根据自身实际情况选择合适的方法&#xff01; 一&#xff1a;使…

imgaug库指南(13):从入门到精通的【图像增强】之旅

引言 在深度学习和计算机视觉的世界里&#xff0c;数据是模型训练的基石&#xff0c;其质量与数量直接影响着模型的性能。然而&#xff0c;获取大量高质量的标注数据往往需要耗费大量的时间和资源。正因如此&#xff0c;数据增强技术应运而生&#xff0c;成为了解决这一问题的…

【SPDK】【NoF】使用SPDK实现NVMe over Fabrics Target

本文使用两台PC&#xff0c;一台做NVMe over Fabrics Target&#xff08;服务端&#xff09;&#xff0c;一台做NVMe over Fabrics initiator&#xff08;客户端&#xff09;。首先使用SoftRoCE来实现底层的rdma传输&#xff0c;然后使用SPDK来实现NVMe over Fabrics Target。 …

首家通过中国信通院数据库迁移工具专项测试,亚信安慧AntDB受到认可!

亚信安慧数据库数据同步平台经过中国信通院第17批“可信数据库”数据库迁移工具专项测试&#xff0c;成功成为首家符合《数据库迁移工具能力要求》的产品。该平台广泛适用于多种数据迁移场景&#xff0c;具备高性能实时数据处理、断点续作、一键迁移、可视化运维等核心优势。此…

Linux第22步_安装CH340驱动和串口终端软件MobaXterm

开发板输出信息通常是采用串口&#xff0c;而计算机通常是USB接口&#xff0c;为了让他们之间能够交换数据&#xff0c;我们通常采用USB转串口的转换器来实现。目前市场上的串口转换器大多是采用CH340芯片来实现的&#xff0c;因此我们需要在计算中安装一个CH340驱动程序&#…

echarts——折线图实现不同区间不同颜色+下钻/回钻功能——技能提升

echarts——折线图实现不同区间不同颜色下钻/回钻功能——技能提升 需求场景解决步骤1&#xff1a;安装echarts插件解决步骤2&#xff1a;html代码解决步骤3&#xff1a;封装option配置和initChart渲染方法解决步骤4&#xff1a;回钻功能 需求场景 最近在写后台管理系统时&…

conda环境下Torch not compiled with CUDA enabled解决方法

1 问题描述 在运行wav2lip模型训练时&#xff0c;报如下错误&#xff1a; Traceback (most recent call last):File "D:\ml\Wav2Lip\preprocess.py", line 32, in <module>fa [face_detection.FaceAlignment(face_detection.LandmarksType._2D, flip_inputF…

线性代数——(期末突击)矩阵(下)-习题篇(初等变换求逆矩阵、矩阵乘法、求矩阵方程、求线性方程组、解齐次线性方程组)

目录 初等变换求逆矩阵 矩阵乘法 求矩阵方程 求线性方程组 解齐次线性方程组 带有未知数的方程组 初等变换求逆矩阵 如果,则A可逆&#xff0c;且 例题&#xff1a; &#xff0c;求A的逆矩阵。 矩阵乘法 求AB&#xff0c;BA. 矩阵之间的乘法是行乘以列&#xff0c;以这…

基于ssm的教材管理系统论文

基于SSM的教材管理系统的设计与实现 摘 要 当下&#xff0c;正处于信息化的时代&#xff0c;许多行业顺应时代的变化&#xff0c;结合使用计算机技术向数字化、信息化建设迈进。以前学校对于教材信息的管理和控制&#xff0c;采用人工登记的方式保存相关数据&#xff0c;这种以…

沈阳数字孪生赋能工业智能制造,助力制造业企业数字化转型

沈阳数字孪生赋能工业智能制造&#xff0c;助力制造业企业数字化转型。在数字经济时代&#xff0c;数字孪生作为实现各行各业智能化、数字化的重要手段之一&#xff0c;受到了各方的广泛重视。随着各项关键使能技术的不断发展&#xff0c;数字孪生的应用价值有望得到进一步释放…

MFC 多文档视图架构

目录 多文档视图架构 模仿多文档视图架构 执行流程 多文档视图架构 一个多文档视图架构运行后会是下面的样子&#xff1a; 内部的子框架窗口就相当于一个单文档视图架构&#xff0c;多文档视图架构就相当于在外面套一层框架窗口。 特点&#xff1a;可以管理多个文档(可以有…

【hcie-cloud】【21】容器详解【容器网络说明、容器存储说明、容器镜像说明、dockerfile详述、缩略词】【下】

文章目录 容器介绍&#xff0c;容器工作机制、容器常用命令说明容器网络容器网络简介容器常用网络类型 - Bridge容器常用网络类型 - Host容器常用网络类型 - None其他容器网络类型【Macvlan、Overlay、IPvlan】容器网络相关配置 容器存储容器中应用数据的存储容器持久化存储配置…

猫粮的选择:买主食冻干猫粮要注意什么

由于猫咪是肉食动物&#xff0c;对蛋白质的需求很高&#xff0c;如果摄入的蛋白质不足&#xff0c;就会影响猫咪的成长。而冻干猫粮本身因为制作工艺的原因&#xff0c;能保留原有的营养成分和营养元素&#xff0c;所以冻干猫粮蛋白含量比较高&#xff0c;营养又高&#xff0c;…

控制障碍函数(Control Barrier Function,CBF) 三、代码

三、代码实现 3.1、模型 这是一个QP问题&#xff0c;所以我们直接建模 这其实还是之前的那张图&#xff0c;我们把这个大的框架带入到之前的那个小车追击的问题中去&#xff0c;得到以下的一些具体的约束条件 CLF约束 L g V ( x ) u − δ ≤ − L f V ( x ) − λ V ( x ) …

速学python·输入输出

和用户交互 程序与用户交互工程中 用户把信息传送给程序的过程是 输入 程序把结果展示给用户的过程是 输出 输入输出的最简单的方法是利用控制台 例如 和 都是控制台,进行输入和输出的作用 但是: 我们常见的交互界面,例如QQ,浏览器,Wegame等,都不需要输入命令,大大简化了操…