当前位置: 首页 > news >正文

机器学习——Random Forest随机森林:b站up主 五分钟机器学习+time星君

视频链接

视频链接

博客链接

一、基本架构

随机森林是Bagging(Bootstrap Aggregating) =“自助采样 + 平均/投票”的一种

有很多决策树,不同决策树训练的数据集不一样,看问题的角度不一样,运行结果不一样,将不同结论综合起来,得到随机森林最终的输出。特点是处理多个特征的样本数据

二、原理

(一)随机森林的随机在于哪里?

体现在数据集样本的随机抽样选择和待选特征的随机抽样选择,使得每一棵树的样本、特
征都是不同的。使得每一棵树的样本、特征都是不同的。
数据集样本的随机抽样选择
从原始的数据集中采取有放回的抽样(BaggingBootstrap Aggregating,构造子数据集,子数据集的数据量是和
原始数据集相同的。不同子数据集的元素可以重复,同一个子数据集中的元素也可以重复。
待选特征的随机抽样选择
与数据集的随机选取类似,随机森林中的子树的每一个分裂过程并未用到所有的待选特
征,而是从所有的待选特征中随机选取一定的特征,之后再在随机选取的特征中选取最优的
特征。

(二)要点

训练数据从总数据中取小n个样本,小d个数据,保证每个训练数据都不一样

对regression问题,通过求均值整合结果

对classification问题,通过求众数整合结果

(三)步骤

(1)先采用放回抽样的方式抽取样本

(2)用不同的样本分别训练不同的决策树

(3)假设有M个特征,选择有一部分数据,特征为m(m<<M),每一次分裂都是从m中选一个出来;减小m,树之间的相关性降低,增大m,树之间相关性变高。研究之后m取(样本数开根号)

(4)每个决策树会产生一个输出,如果是分类问题,就通过众数决定(投票),如果是回归就取平均

(四)影响模型效果好坏的因素

(1)每个树的特征数,前面提到的m,一般取

(2)决策树的棵树一般默认为100

(3)树深,太深每棵树都会过度学习,会过拟合

(五)评价指标

三、优缺点

优点
1.它可以处理很高维度(特征很多)的数据,并且不用降维,无需做特征选择
2.它可以判断特征的重要程度
3.可以判断出不同特征之间的相互影响
4. 不容易过拟合
5.训练速度比较快,容易做成并行方法
6.实现起来比较简单
7.对于不平衡的数据集来说,它可以平衡误差。
8.如果有很大一部分的特征造失,仍可以维持准确度。
缺点
1.随机森林已经被证明在某些噪音较大的分类或回归问题上会过拟合
2.对于有不同取值的属性的数据,取值划分较多的属性会对随机森林产生更大的影响,所以随机森林在
这种数据上产出的属性权值是不可信的

四、决策树

如何选择最优的决策条件?不同的分支选显示的特征不同。

熵ENTROPY:Measures The Uncertainty in a mode

样本一致性低,熵越大,不确定性越高,

决策树的整体流程

决策树的优缺点

优点:直观,好理解

缺点:

1.对于树的最大深度这个预制参数很敏感
深度太大,可能overfit
深度太小,可能underfit

树的深度:

(1)太浅,分类过程没有完全结束,underfit

(2)太深,模型缺乏普适性,过拟合,overfit

2.计算效率不高

决策树有什么缺点才需要随机森林

决策树(特别是深树)在“单兵作战”时有三大**原生缺陷**,随机森林正是逐条对症下药:

1.高方差—— 数据稍微动一下,树就长得面目全非
成因:分裂准则(信息增益/Gini)是 贪婪最大化 ,把训练集每一丝波动都当成“真理”刻进去。
后果:换一批样本或调几个点,树结构、预测结果都可能剧变,稳定性极差。
→ 随机森林用 Bootstrap + 平均/投票 把方差直接砍到 1/B 量级。

2.极易过拟合—— 只要一直分层,总能把叶子纯度刷到 100 %
成因:节点可无限细分,训练误差能压到 0。
后果:训练集 100 %,测试集 70 %,经典“背题库”现场。
→ 随机森林靠 多树集成 + 随机特征子集 引入扰动,让单棵树“背不下来”,集成后反而泛化更好。

3.对噪声、异常值敏感—— 一个脏点就能把整棵树的早期分裂带歪
成因:顶层分裂由全局最优指标决定,脏数据一旦成为“最佳切点”,误差一路向下放大。
后果:一条异常记录可让预测偏差飞出边界。
→ 随机森林的 样本重采样 + 特征随机 让异常点大概率进不了部分子树,即使进入也只影响少数树,最终投票被稀释。

额外副作用
- 线性/加性结构捕捉差、对旋转敏感、无法外推等,随机森林也能顺带缓解(虽非主因)。

总结:
决策树把“偏差压到极低、方差飙到极高”当成默认选项;随机森林用Bootstrap 采样和随机特征子集人为注入扰动,再把多棵高方差树“平均”掉波动,于是方差骤降、过拟合收敛、鲁棒性飙升——这就是“树必须抱团”才堪大用的根本原因。

http://www.jsqmd.com/news/131417/

相关文章:

  • 数据生命周期管理:从创建到销毁全过程控制
  • 节日活动安排通知:企业文化传播新渠道
  • 禁用64位系统32位文件重定向(C++代码)
  • SRI子资源完整性:确保静态资源未被篡改
  • electron-builder无法打包node_module内容的问题,以及打包各种路径报错问题
  • 35、WPF 自定义控件与绘图指南
  • 3.端口隔离——隔离模式对比
  • 内部竞聘岗位匹配:AI推荐最适合人选
  • 【2025最新】基于SpringBoot+Vue的高校就业招聘系统管理系统源码+MyBatis+MySQL
  • 36、使用WPF创建图形控件的详细指南
  • 前后端分离和BS架构宠物健康咨询系统系统|SpringBoot+Vue+MyBatis+MySQL完整源码+部署教程
  • 通过中断优化51单片机串口通信实验性能的方法探讨
  • WebSocket实时通信:保证交互流畅性
  • 【2025最新】基于SpringBoot+Vue的社区老人健康信息管理系统管理系统源码+MyBatis+MySQL
  • 37、图形绘制的不同方式及实现
  • 被罚2000万后,某电商大数据平台GDPR合规整改3个月复盘
  • NPS净推荐值调查:衡量用户满意程度
  • ISO27001认证准备:信息安全管理体系建立
  • RESTful API设计规范:便于系统间集成
  • 31、WPF 条件模板与数据验证全解析
  • MOSFET半桥驱动电路设计实战案例
  • 在线客服转接判断:何时需要人工介入
  • 如何看懂PCB板电路图:模拟信号路径深度剖析
  • RTO恢复时间目标:灾难恢复能力建设
  • 智能家居控制中枢:一句话搞定复杂操作
  • HBuilderX安装教程详解:新手快速上手操作指南
  • 遇到一个犟种领导,是种什么感觉?
  • vivado中定点数除法设计:完整指南与参数设置
  • 13、深入解析 Active Directory 管理:概念、操作与最佳实践
  • HTTPS加密传输:防止中间人攻击