首页 > 其他分享 >【机器学习300问】35、什么是随机森林?

【机器学习300问】35、什么是随机森林?

时间:2024-03-13 20:02:34浏览次数:26  
标签:预测 300 35 特征 子集 随机 决策树 森林

〇、让我们准备一些训练数据

idx0x1x2x3x4y
04.34.94.14.75.50
13.96.15.95.55.90
22.74.84.15.05.60
36.64.44.53.95.91
46.52.94.74.66.11
52.76.74.25.34.81

        表格中的x0到x4一共有5个特征,y是目标值只有0,1两个值说明是一个二分类问题。 

一、决策树的局限性

        决策树算法是一种直观且易于理解的机器学习算法,通过一系列的特征测试将数据划分到不同的类别或预测结果中去,尽管他在解释性上具有优势,但存在一些的局限性。

(1)容易过拟合且不稳定

        决策树容易产生复杂的模型结构,尤其是在没有剪枝或者设置最大深度的时候,很容易导致过拟合现象,无法在新数据上得到泛化能力。

        决策树的构建过程对输入数据的微小变化非常敏感,可能会导致生成完全不同的决策边界,这意味着模型可能不稳定,无法很好的处理噪声。

(2)决策路径单一且容易忽略冗余特征

        单一决策树依赖于构建过程中选择的特征顺序和分割阈值,这会忽视其他重要的特征无法充分利用所有信息。

        当多个特征高度相关的时候,决策树可能无法有效平衡这些冗余特征的重要性,从而导致过分依赖某个特征,忽视其他同样重要的特征。

二、什么是随机森林?

        随机森林是一种集成学习方法,他就像是一个由多个决策树组成的森林,每个决策树都是一个独立的分类(或者回归)模型。让我们用一个校园活动的比喻来解释它:

        假设有个才艺比赛,评委要决定哪个班级的表演最出色。每个评审只能观看少数几个班级的表演,并且每个评审只专注于表演中的特定方面(例如舞蹈技巧、原创性或服装)。最终,所有评审齐聚一堂,通过投票来决定哪个班级的整体表现最优秀。

        在这个任务中每个评审代表一个决策树,他们的部分观察(基于随机子集的数据和特征)就像单棵决策树的预测,而评审们的投票过程则类似于森林中所有树的预测结果的集成。通过这种方式,随机森林利用整体的智慧和多样性来提升预测的准确性,并且通常比单个决策树更加稳健。

(1)随机森林长什么样子?

        这就是一个随机森林的长相,可以清楚的看到它是由多个(这里是4个)决策树构成的。

(2)随机森林的工作原理

① 每个树的训练样本随机【随机样本抽取】

        在构建每棵决策树时,不是使用全部的训练数据集,而是通过自助采样(bootstrap sampling)创建多个不同的训练数据子集。这样每棵树都是基于不同的训练子集来训练的。

        这样做的好处是:通过随机抽样得到的样本能够较好地代表整个总体。随机抽样允许量化抽样误差,提高估计的精确度和预测的准确性。还能降低统计样本的难度,节省资源。

        上图中我们就随机抽取了四个样本来构建4个不同的决策树:

② 每个树的特征选择随机【随机特征选择】

        在决策树的每次分裂时,不是从所有的特征中选择最佳分裂特征,而是从一个随机选择的特征子集中选择。然后在该子集中找到最优的特征来进行划分。

        这样做的好处是:降低了单个特征对决策树生成的影响,使得模型更加鲁棒,并且能够有效利用大量冗余或相关特征带来的信息。

        上图中我们就随机抽取了不同的特征形成特征子集来构建决策树:

③ 选择合适的方式集成并获得最终结果

  • 分类问题:在预测新样本类别时,每棵决策树都会给出一个预测结果。随机森林采用投票机制来确定最终类别,即多数表决原则——得票最多的类别作为最终预测结果。
  • 回归问题:每棵树输出一个数值预测,最后取这些预测值的平均值作为最终回归预测结果。

三、特征子集的大小怎么选择?

        在随机森林算法中,特征子集的大小,也就是在每次分裂节点时考虑的特征数量,会对模型的性能产生显著影响。选择这个参数的常见方法有两种:

(1)经验法

        很多随机森林实现(例如scikit-learn库)有默认的启发式规则。这些默认设置通常还不错。

  • 对于分类任务,默认设置是总特征数的平方根
  • 对于回归任务,默认设置是总特征数的三分之一

(2)交叉验证法

        利用交叉验证来寻找最佳的特征子集,你可以在一系列值中测试算法性能,选择出最优化模型准确性的特征数量。

标签:预测,300,35,特征,子集,随机,决策树,森林
From: https://blog.csdn.net/qq_39780701/article/details/136688327

相关文章

  • 380. O(1) 时间插入、删除和获取随机元素.18071112
    380.O(1)时间插入、删除和获取随机元素实现RandomizedSet类:RandomizedSet()初始化RandomizedSet对象boolinsert(intval)当元素val不存在时,向集合中插入该项,并返回true;否则,返回false。boolremove(intval)当元素val存在时,从集合中移除该项,并返回true;否则......
  • 北大最新综述精读:RAG在AIGC中的前世今生,覆盖300篇论文!
    ©作者|Haoyang来源|神州问学如果你对这篇文章感兴趣,而且你想要了解更多关于AI领域的实战技巧,可以关注「神州问学」公众号。在这里,你可以看到最新最热的AIGC领域的干货文章和前沿资讯。引言:人工智能生成内容(AIGC)的不断发展得益于模型算法、可扩展的模型价格以及大规模......
  • LM358P/LM358DR/LM358DT/LM358DR2G运算放大器中文资料PDF数据手册引脚图功能
    产品概述:LM358B和LM2904B器件是行业标准运算放大器LM358和LM2904的下一代版本,其中包括两个高压(36V)运算放大器。这些器件为成本敏感型应用提供了卓越的价值,其特性包括低偏移(300µV,典型值)、对地共模输入范围和高差分输入电压能力。LM358B和LM2904B运算放大器利用......
  • 即时通讯技术文集(第35期):IM群聊技术合集(Part2) [共12篇]
    为了更好地分类阅读52im.net总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第35 期。​[- 1 -] 直播系统聊天技术(一):百万在线的美拍直播弹幕系统的实时推送技术实践之路[链接] http://www.52im.net/thread-1236-1-1.html[摘要] 本文作者是美拍的架构......
  • 【习题】随机变量与分布函数
    [T0301]设随机变量\(\xi\)取值于\([0,1]\),若\(P\{x\le\xi<y\}\)只与长度\(y-x\)有关(对一切\(0\lex\ley\le1\)).试证\(\xi\simU[0,1]\).证不妨设\(P\{x\le\xi<y\}=f(y-x)\).令\(x=0\),则有\(P\{0\le\xi<y\}=f(y)\).注意到对\(\for......
  • 35_安装mariadb
    1.安装mariadb#1.安装[root@mysql1~]yum-yinstallmariadb-server[root@mysql1~]#systemctlstartmariadb[root@mysql1~]#systemctlenablemariadbCreatedsymlink/etc/systemd/system/mysql.service→/usr/lib/systemd/system/mariadb.service.Createdsy......
  • QT生成固定长度的随机字符串
    最近项目中有一个需要使用QT生成固定长度随机字符串的需求,需求也很简单,就是生成一个n位的仅包含0-9以及大写字母的字符串,因为这也是第一次使用QT自身的随机数,这里就做一下简单记录。废话不多说,直接上代码。1QStringgetRandomString(intlength)2{3qsrand(QDateTi......
  • R语言CART决策树、随机森林、chaid树预测母婴电商平台用户寿命、流失可视化
    全文链接:http://tecdat.cn/?p=31644原文出处:拓端数据部落公众号借着二胎政策的开放与家庭消费升级的东风,母婴市场迎来了生机盎然的春天,尤其是母婴电商行业,近年来发展迅猛。用户获取和流失是一对相对概念,就好比一个水池,有进口,也有出口。我们不能只关心进口的进水速率,却忽略了出水......
  • R语言逻辑回归、决策树、随机森林、神经网络预测患者心脏病数据混淆矩阵可视化
    全文链接:https://tecdat.cn/?p=33760原文出处:拓端数据部落公众号概述:众所周知,心脏疾病是目前全球最主要的死因。开发一个能够预测患者心脏疾病存在的计算系统将显著降低死亡率并大幅降低医疗保健成本。机器学习在全球许多领域中被广泛应用,尤其在医疗行业中越来越受欢迎。机器......
  • R语言拟合线性混合效应模型、固定效应随机效应参数估计可视化生物生长、发育、繁殖影
    全文链接:https://tecdat.cn/?p=35338原文出处:拓端数据部落公众号本文将介绍如何设置工作目录、读取数据、标准化数据、拟合线性混合效应模型、提取随机效应参数、绘制相关性图和Dot-and-Whisker图,以帮助研究人员更好地理解数据并进行有效的数据分析。通过这些步骤,我们可以深入了......