机器学习---随机森林

news2024/11/23 15:47:43

1、使用决策树来做回归或者预测值

如上图,使用学历、收入、身高、行业使用决策树来预测收到的邮件数。可以将邮件数分为几类(也可以按照其他列,将邮件数分类),比如邮件数<=23封属于A类,邮件数大于23<邮件数<=30为B类,A类中取邮件的平均数,B类中也取邮件的平均数。就是可以将某些列作为分类条件划分邮件数的类别,再取邮件数的平均数,这样可以使用决策树来预测大概值的范围。

2、决策树预剪枝和后剪枝

决策树对训练集有很好的分类能力,但是对于未知的测试集未必有好的分类能力,导致模型的泛化能力弱,可能发生过拟合问题,为了防止过拟合问题的出现,可以对决策树进行剪枝。剪枝分为预剪枝和后剪枝。

预剪枝:就是在构建决策树的时候提前停止。比如指定树的深度最大为3,那么训练出来决策树的高度就是3,预剪枝主要是建立某些规则限制决策树的生长,降低了过拟合的风险,降低了建树的时间,但是有可能带来欠拟合问题。

后剪枝:后剪枝是一种全局的优化方法,在决策树构建好之后,然后才开始进行剪枝。后剪枝的过程就是删除一些子树,这个叶子节点的标识类别通过大多数原则来确定,即属于这个叶子节点下大多数样本所属的类别就是该叶子节点的标识。选择减掉哪些子树时,可以计算没有减掉子树之前的误差和减掉子树之后的误差,如果相差不大,可以将子树减掉。一般使用后剪枝得到的结果比较好。

剪枝可以降低过拟合问题,如下图:

当来一条数据年龄为中年,信用高,孩子个数是4个时,没有办法分类。可以通过剪枝,降低过拟合问题。

3、随机森林

随机森林是由多个决策树组成。是用随机的方式建立一个森林,里面由很多决策树组成。随机森林中每一棵决策树之间都是没有关联的。得到随机森林之后,对于一个样本输入时,森林中的每一棵决策树都进行判断,看看这个样本属于哪一类,最终哪一类得到的结果最多,该输入的预测值就是哪一类。

随机森林中的决策树生成过程是对样本数据进行行采样和列采样,可以指定随机森林中的树的个数和属性个数,这样当训练集很大的时候,随机选取数据集的一部分,生成一棵树,重复上面过程,可以生成一堆形态各异的树,这些决策树构成随机森林。

随机森林中的每个决策树可以分布式的训练,解决了单棵决策树在数据量大的情况下预算量大的问题。当训练样本中出现异常数据时,决策树的抗干扰能力差,对于随机森林来说也解决了模型的抗干扰能力。

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

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

相关文章

使用 Node.js 插件给指定目录下的所有图片添加上文字水印

说在前面 加水印是为了保护图片的版权和安全。在互联网上&#xff0c;很容易将图片下载或者截屏保存下来&#xff0c;然后进行二次使用&#xff0c;这就侵犯了原作者的版权。而加上水印可以使得图片更难被盗用&#xff0c;因为盗用者需要花费时间和精力去处理水印&#xff0c;而…

【稳定检索|投稿优惠】2024年交通运输与能源动力国际学术会议(IACTEP 2024)

2024年交通运输与能源动力国际学术会议(IACTEP 2024) 2024 International Academic Conference on Transportation and Energy Power(IACTEP) 一、【会议简介】 2024年交通运输与能源动力国际学术会议(IACTEP 2024)将在美丽的三亚盛大启幕。本次会议将聚焦交通运输与能源动力等…

【所有方法一览】大模型推理优化:在更小的设备运行、推理增速

大模型推理优化&#xff1a;在更小的设备运行、推理增速 知识蒸馏&#xff08;优先&#xff09;模型剪枝模型量化&#xff08;优先&#xff09;参数共享低秩分解参数搜索 知识蒸馏&#xff08;优先&#xff09; 知识蒸馏&#xff1a; 知识&#xff1a;模型参数、一堆矩阵蒸馏&…

C#线程Thread的使用

引言 在C#编程语言中&#xff0c;线程是一种并发执行的机制&#xff0c;可以实现多个任务同时执行&#xff0c;提高程序的效率和响应能力。C#提供了Thread类来处理线程相关的操作。本文将详细介绍C#中Thread类的使用方法和注意事项。 目录 引言线程的基本概念线程&#xff08;…

Ubuntu 常用命令之 sudo 命令用法介绍

&#x1f4d1;Linux/Ubuntu 常用命令归类整理 sudo命令在Ubuntu系统中是一个非常重要的命令&#xff0c;它允许系统管理员赋予某些用户&#xff08;或用户组&#xff09;以系统管理员的身份运行一些或全部的命令。sudo代表“superuser do”&#xff0c;即以超级用户的身份执行…

掌握Guava的并发工具:轻松应对复杂并发场景

推荐语 这篇文章介绍了 Guava 的一些常用并发工具类的使用方法。通过学习这些工具类&#xff0c;我们可以轻松地处理异步操作。这些工具类不仅功能丰富&#xff0c;还大大简化并发编程的复杂性。无论你是初学者还是经验丰富的开发者&#xff0c;这篇文章都会对你在并发编程方面…

2023年中国数据智能管理峰会(DAMS上海站2023)-核心PPT资料下载

一、峰会简介 数据已经成为企业的核心竞争力&#xff01;谁掌控数据、更好的利用数据、实现资产化&#xff0c;谁就会真正率先进入大数据时代。 1、数据智能管理趋势和挑战 在峰会上&#xff0c;与会者讨论了数据智能管理的最新趋势和挑战。随着数据量的不断增加&#xff0c…

本地websocket服务端结合cpolar内网穿透实现公网访问

文章目录 1. Java 服务端demo环境2. 在pom文件引入第三包封装的netty框架maven坐标3. 创建服务端,以接口模式调用,方便外部调用4. 启动服务,出现以下信息表示启动成功,暴露端口默认99995. 创建隧道映射内网端口6. 查看状态->在线隧道,复制所创建隧道的公网地址加端口号7. 以…

华为OD机试 - 区间交集 - 深度优先搜索dfs算法(滥用)(Java 2023 B卷 200分)

目录 专栏导读一、题目描述二、输入描述三、输出描述备注用例1、输入2、输出3、说明 四、解题思路1、核心思路&#xff1a;2、具体步骤 五、Java算法源码再重新读一遍题目&#xff0c;看看能否优化一下~解题步骤也简化了很多。 六、效果展示1、输入2、输出3、说明 华为OD机试 2…

【小呆的力学笔记】弹塑性力学的初步认知二:应力分析(1)

文章目录 1.1 一点的应力状态1.2 一点主应力状态1.3 应力偏张量、球张量、应力不变量 1.1 一点的应力状态 物体在受到外力或者自身不均匀的温度场等作用时&#xff0c;在其内部会产生内力&#xff0c;物体的内力与方向和截面都有关系。假设有一个受到外力作用的变形体&#xf…

【Linux】Linux线程概念和线程控制

文章目录 一、Linux线程概念1.什么是线程2.线程的优缺点3.线程异常4.线程用途5.Linux进程VS线程 二、线程控制1.线程创建2.线程终止3.线程等待4.线程分离 一、Linux线程概念 1.什么是线程 线程是进程内的一个执行流。 我们知道&#xff0c;一个进程会有对应的PCB&#xff0c;…

【LeetCode刷题笔记(12-1)】【Python】【有效的字母异位词】【排序/字符统计】【简单】

文章目录 引言有效的字母异位词题目描述提示 解决方案1&#xff1a;【排序】解决方案2&#xff1a;【字符统计】结束语 有效的字母异位词 引言 编写通过所有测试案例的代码并不简单&#xff0c;通常需要深思熟虑和理性分析。虽然这些代码能够通过所有的测试案例&#xff0c;但…

职场必备!这个微信管理效率神器一定要知道

很多小伙伴在管理微信时&#xff0c;都会遇到效率不高的问题&#xff0c;尤其是一些有多个微信号的人&#xff0c;如何高效管理微信成为了一道难题。 今天就给大家分享一款能高效管理微信的工具&#xff0c;让大家既能节省时间又可以提高工作效率&#xff01; 通过微信管理系…

Vue3-23-组件-依赖注入的使用详解

什么是依赖注入 个人的理解 &#xff1a; 依赖注入&#xff0c;是在 一颗 组件树中&#xff0c;由 【前代组件】 给 【后代组件】 提供 属性值的 一种方式 &#xff1b;这种方式 突破了 【父子组件】之间通过 props 的方式传值的限制&#xff0c;只要是 【前代组件】提供的 依…

自动化测试工具-Selenium:WebDriver的API/方法使用全解

我们上一篇文章介绍了Selenium的三大组件&#xff0c;其中介绍了WebDriver是最重要的组件。在这里&#xff0c;我们将看到WebDriver常用的API/方法&#xff08;注&#xff1a;这里使用Python语言来进行演示&#xff09;。 1. WebDriver创建 打开VSCode&#xff0c;我们首先引…

数据结构与算法之美学习笔记:39 | 回溯算法:从电影《蝴蝶效应》中学习回溯算法的核心思想

目录 前言如何理解“回溯算法”&#xff1f;两个回溯算法的经典应用内容小结 前言 本节课程思维导图&#xff1a; 我们在前面深度优先搜索算法利用的是回溯算法思想。这个算法思想非常简单&#xff0c;但是应用却非常广泛。它除了用来指导像深度优先搜索这种经典的算法设计之外…

原生微信小程序中使用-阿里字体图标-详解

步骤一 1、打开阿里巴巴矢量图标库 网址&#xff1a;iconfont-阿里巴巴矢量图标库 2、搜索字体图标&#xff0c;鼠标悬浮点击添加入库 3、按如下步骤添加到自己的项目 步骤二 进入微信开发者工具 1、创建 fonts文件夹 > iconfont.wxss 文件&#xff0c;将刚才的代码复制…

GLTF/GLB模型在线预览、编辑、动画查看以及材质修改

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 GLTF在线编辑器提供了一个内置的模型查看器&#xff0c;可以加载和预…

NC65凭证保存时,报“错误:凭证内部错误号:[10001]凭证借贷金额不平!”

NC65凭证保存时&#xff0c;报“错误:凭证内部错误号&#xff1a;[10001]凭证借贷金额不平&#xff01;” 实际就是分录少录了2分钱。加上去即可。 代码排查&#xff1a; nc.bs.gl.voucher.VoucherBO.save(VoucherVO voucher, Boolean isneedcheck) throws BusinessExceptio…

微服务之服务注册与发现

服务注册发现 服务注册就是维护一个登记簿&#xff0c;它管理系统内所有的服务地址。当新的服务启动后&#xff0c;它会向登记簿交待自己的地址信息。服务的依赖方直接向登记簿要 Service Provider 地址就行了。当下用于服务注册的工具非常多 ZooKeeper&#xff0c;Consul&…