0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

随机森林的概念、工作原理及用例

NVIDIA英伟达 来源:NVIDIA英伟达 作者:NVIDIA英伟达 2022-08-05 10:00 次阅读

随机森林是一种监督式算法,使用由众多决策树组成的一种集成学习方法,输出是对问题最佳答案的共识。随机森林可用于分类或回归。

什么是随机森林?

随机森林是用于分类和回归的一种主流集成学习方法。

集成学习方法结合了多种机器学习 (ML) 算法,以获得更好的模型 – 应用于数据科学的群体智慧。此类学习方法基于这样一种概念:一群对问题领域知之有限的人集思广益,可以获得比一个知识丰富的人更好的解决方案。

随机森林是一组决策树,是几乎人人都熟悉的解决问题的比喻。决策树通过针对数据集元素,询问一系列回答是否的问题来得出答案。在下面的示例中,为了预测一个人的收入,决策会考虑变量(特征),例如此人是否有工作(是或否)以及此人是否有房子。在算法环境中,机器会不断搜索特征,以允许将一组中的观察结果按如下方式进行分割,即结果组之间尽可能不同,而每个不同子组的成员之间尽可能相似。

ae1d5a88-13f4-11ed-ba43-dac502259ad0.png

随机森林使用名为“bagging”的技术,通过数据集和特征的随机自助抽样样本并行构建完整的决策树。虽然决策树基于一组固定的特征,而且经常过拟合,但随机性对森林的成功至关重要。

ae35625e-13f4-11ed-ba43-dac502259ad0.png

随机性可确保单个树之间的相关性较低,从而减少偏差风险。大量树的存在也减少了过拟合问题,如果模型在训练数据中加入过多“噪声”并因此做出糟糕决策,这种问题就会出现。

使用随机森林模型,随着模型中不相关树的数量增加,做出正确预测的可能性也会增加。结果的质量更高,因为它们反映了大多数树做出的决策。此投票过程通过限制误差来保护每个树不互相伤害。即使有些树错误,也会有一些树正确,因此这组树集体朝正确的方向前行。虽然随机森林模型在考虑许多特征时可能会运行缓慢,但即使是使用有限数量特征的小模型也会产生非常好的结果。

随机森林的工作原理是什么?

随机森林中的每棵树在称为自助聚集 (bagging) 的过程中随机对训练数据子集进行抽样。该模型适合这些较小的数据集,并汇总预测结果。通过有放回抽样,可以重复使用同一数据的几个实例,结果就是,这些树不仅基于不同的数据集进行训练,而且还使用不同的特性做出决策。

ae53b4e8-13f4-11ed-ba43-dac502259ad0.png

图像来源:KDNuggets

用例

分类示例包括:

欺诈检测

垃圾邮件检测

文本情感分析

预测患者风险、败血症或癌症

回归示例包括:

预测欺诈数量

预测销售额

为何选择随机森林?

随机森林模型有五个主要优点:

非常适合回归和分类问题。回归中的输出变量是一个数字序列,例如某个街区的房价。分类问题的输出变量通常是一个单一答案,例如房屋的售价是否高于或低于要价。

可以处理缺失值并保持高准确性,即使由于 bagging 和有放回抽样而缺失大量数据时也是如此。

算法由于输出的是“多数规则”,使得模型几乎不可能过拟合。

该模型可以处理包含数千个输入变量的庞大数据集,因此成为降维的不错工具。

其算法可用于从训练数据集中识别非常重要的特征。

其也有一些缺点:

随机森林优于决策树,但其准确性低于 XGBoost 等梯度提升树集成。

随机森林包含大量树,因此速度比 XGBoost 慢。

梯度提升决策树

梯度提升决策树 (GBDT) 是一种决策树集成学习算法,类似于用于分类和回归的随机森林。随机森林和 GBDT 都构建了由多个决策树组成的模型。两者的区别在于重建和组合的方式。

GBDT 使用一种称为 boosting 的技术,以迭代方式训练一组浅层决策树,每次迭代都使用上一个模型的残差拟合下一个模型。最终得到的预测结果是所有树预测结果的加权总和。随机森林 bagging 可大幅减少差异和过拟合,而 GBDT boosting 则可减少偏差和欠拟合。

XGBoost(极端梯度提升)是 GBDT 的领先、可扩展的分布式变体。使用 XGBoost 时,树并行构建,而非顺序构建。GBoost 遵循按层生长策略,扫描梯度值并使用这些部分和来评估训练集中每个可分割点的分割质量。

XGBoost 因其广泛的用例、可移植性、多样化的语言支持以及云集成而广受欢迎。

与 XGBoost 相比,随机森林模型的准确性可能会因两个不同的误差来源(偏差和方差)而下降:

梯度提升模型通过以低学习率进行多轮提升来消除偏差和方差。

梯度提升模型超参数也有助于消除方差。

随机森林模型使用树深度和树的数量消除偏差和方差。

随机森林树可能需要比梯度提升树更深入。

更多数据可减少偏差和方差。

NVIDIA GPU 加速的

随机森林、XGBOOST 和端到端数据科学

在架构方面,CPU 仅由几个具有大缓存内存的核心组成,一次只可以处理几个软件线程。相比之下,GPU 由数百个核心组成,可以同时处理数千个线程。

ae784146-13f4-11ed-ba43-dac502259ad0.jpg

基于 CUDA-X AI 创建的 NVIDIA RAPIDS开源软件库套件使您完全能够在 GPU 上执行端到端数据科学和分析流程。此套件依靠 NVIDIA CUDA 基元进行低级别计算优化,但通过用户友好型 Python 接口实现了 GPU 并行化和高带宽显存速度。

ae947f64-13f4-11ed-ba43-dac502259ad0.png

借助 RAPIDS GPU DataFrame,数据可以通过一个类似 Pandas 的接口加载到 GPU 上,然后用于各种连接的机器学习和图形分析算法,而无需离开 GPU。这种级别的互操作性可通过 Apache Arrow 等库实现,并且可加速端到端流程(从数据准备到机器学习,再到深度学习)。

RAPIDS 的机器学习算法和数学基元遵循熟悉的类似于 scikit-learn 的 API。单块 GPU 和大型数据中心部署均支持 XGBoost、随机森林等主流工具。针对大型数据集,相较于同等功效的 CPU,这些基于 GPU 的实施方案能够以 10 到 50 倍的速度更快地完成任务。

NVIDIA RAPIDS 团队与 DMLC XGBoost 组织建立了紧密的合作关系,而且 GPU 加速 XGBoost 现已包括无缝嵌入式 GPU 加速,可显著加快模型训练速度并提高准确性。对在配备 NVIDIA P100 加速器和 32 个英特尔至强 E5-2698 CPU 核心的系统上运行的 XGBoost 脚本进行的测试表明,相较于在输出质量相同的非 GPU 系统上运行相同的测试,速度提升了 4 倍。这一点尤为重要,因为数据科学家通常会多次运行 XGBoost,以便调整参数并找到出色的准确性。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NVIDIA
    +关注

    关注

    14

    文章

    4541

    浏览量

    101472
  • 算法
    +关注

    关注

    23

    文章

    4437

    浏览量

    90550
  • 随机森林
    +关注

    关注

    1

    文章

    20

    浏览量

    4231

原文标题:NVIDIA 大讲堂 | 什么是 随机森林?

文章出处:【微信号:NVIDIA_China,微信公众号:NVIDIA英伟达】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    加固平板电脑在森林勘探上的应用

    随着对森林资源的重视和需求的增长,森林勘探成为了一项重要的工作。在这个领域中,加固平板电脑的应用为森林勘探工作带来了显著的改善。
    的头像 发表于 02-21 15:33 93次阅读

    晶振的工作原理

    晶振的工作原理
    的头像 发表于 12-08 17:32 492次阅读
    晶振的<b class='flag-5'>工作原理</b>

    太阳能语音警示杆森林防火的新选择

    随着社会的发展和科技的进步,森林防火工作的重要性日益凸显。为了更好地保护森林资源,提高森林防火工作的效率,一种新型的太阳能语音警示杆——HF
    的头像 发表于 11-09 10:27 156次阅读
    太阳能语音警示杆<b class='flag-5'>森林</b>防火的新选择

    rand形成的不是真正的随机数,怎么才能达到真正的随机?

    rand形成的不是真正的随机数啊,,怎么才能达到真正的随机
    发表于 10-30 06:14

    励磁工作原理

      励磁工作原理是指在电磁设备中通过外加电流或磁场来增强设备中的磁场强度的过程。在电磁设备中,励磁是非常重要的步骤,它能够保证设备正常运行,并实现设备的预期功能。本文将从基本概念工作原理和应用方面介绍励磁
    的头像 发表于 09-27 11:03 1686次阅读

    SPI接口的基本概念工作原理

    串行外设接口(Serial Peripheral Interface,SPI)是一种同步串行通信协议,用于在微控制器和其外设之间进行双向数据传输。SPI接口广泛应用于各种嵌入式系统,如传感器、显示器、音频设备等。本文将介绍SPI接口的基本概念工作原理以及在实际应用中的一
    发表于 09-26 18:23 1827次阅读

    GPIO的基本概念工作原理及关键技术

    等的数据采集和控制。本文将介绍GPIO的基本概念工作原理以及一些关键技术,帮助读者更好地理解GPIO的性能和应用。
    的头像 发表于 09-26 17:21 3825次阅读

    基于Python实现随机森林算法

    机器学习算法是数据挖掘、数据能力分析和数学建模必不可少的一部分,而随机森林算法和决策树算法是其中较为常用的两种算法,本文将会对随机森林算法的Python实现进行保姆级教学。
    的头像 发表于 09-21 11:17 568次阅读
    基于Python实现<b class='flag-5'>随机</b><b class='flag-5'>森林</b>算法

    CAN总线的基本概念工作原理、特点以及应用领域

    CAN总线技术是一种广泛应用于汽车、工业自动化等领域的串行通信协议。它是由德国公司BOSCH开发的,全称为Controller Area Network(控制器局域网)。本文将对CAN总线的基本概念工作原理、特点以及应用领域进行简要介绍。
    发表于 09-12 17:04 2112次阅读

    全覆盖路径规划算法(CCPP)工作原理解析

    根据CCPP算法工作原理不同,可以分为随机碰撞法、单元分解法、生物激励法、模板法、智能算法等,但CCPP算法都应该满足覆盖必须满足的要求。
    发表于 08-25 10:31 764次阅读
    全覆盖路径规划算法(CCPP)<b class='flag-5'>工作原理</b>解析

    振荡器的工作原理

    振荡器是一种电路或设备,它能够产生稳定的交流信号或波形。它的工作原理基于正反馈回路的概念
    的头像 发表于 07-04 09:35 1244次阅读

    森林防火远程广播,更好守护森林生态环境

    森林防火远程广播 ,更好守护森林生态****环境 频发的怎林火灾为再次敲响了森林消防的警钟,今天我们就来聊一聊森林防火系统, 农村焚烧秸秆,引起的交通事故,
    的头像 发表于 06-27 09:07 282次阅读
    <b class='flag-5'>森林</b>防火远程广播,更好守护<b class='flag-5'>森林</b>生态环境

    可控硅的工作原理

    前言 一、什么是可控硅 1.1 基本概念 1.2 可控硅的结构 二、可控硅的工作原理 2.1 可控硅是如何工作的 2.2 工作原理 三、可控硅的参数 四、可控硅的应用 结语 前言 又是
    的头像 发表于 06-22 10:41 4637次阅读
    可控硅的<b class='flag-5'>工作原理</b>

    随机森林算法及其实现

    其实从直观角度来解释,每棵决策树都是一个分类器(假设现在针对的是分类问题),那么对于一个输入样本,N棵树会有N个分类结果。而随机森林集成了所有的分类投票结果,将投票次数最多的类别指定为最终的输出,这就是一种最简单的 Bagging 思想。
    的头像 发表于 05-15 09:46 1443次阅读
    <b class='flag-5'>随机</b><b class='flag-5'>森林</b>算法及其实现

    森林防火远程广播,更好守护森林生态环境

    森林防火远程广播 ,更好守护森林生态****环境 频发的怎林火灾为再次敲响了森林消防的警钟,今天我们就来聊一聊森林防火系统, 农村焚烧秸秆,引起的交通事故,
    的头像 发表于 04-26 09:54 297次阅读