Bagging RF

2024-04-21 13:18
文章标签 rf bagging

本文主要是介绍Bagging RF,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Bagging

算法流程如下:

  1. 从原始样本中使用Bootstraping方法有放回地随机抽取 n n n 个训练样本,共进行 k k k 轮抽取,得到 k k k 个训练集;
  2. 对于 k k k 个训练集,分别训练出 k k k 个模型;
  3. 在对预测输出进行结合时:
    • 分类:简单投票法
    • 回归:简单平均法

RF

RF在以决策树为基学习器构建Bagging集成的基础上,进一步在决策树的训练过程中引入了随机属性选择。

传统决策树在选择划分属性时是在当前结点的属性集合(假设有 d d d 个属性)中选择一个最优属性;而在RF中,对基决策树的每个结点,先从该结点的属性集合中随机选择一个包含 k k k 个属性的子集,然后再从这个子集中选择一个最优属性用于划分。 k k k 控制了随机性的引入程度:

  • k = d k=d k=d :基决策树的构建与传统决策树相同;
  • k = 1 k=1 k=1 :随机选择一个属性进行划分;

RF简单、容易实现、计算开销小,但是性能却非常强大。

结合策略

对于输出值连续型,最常用的结合策略是使用平均法:

平均法
  • 简单平均法:

H ( x ) = 1 T ∑ i = 1 T h i ( x ) H(x) = \frac{1}{T} \sum_{i=1}^T h_i(x) H(x)=T1i=1Thi(x)

  • 加权平均法:

H ( x ) = ∑ i = 1 T w i h i ( x ) , ∑ i = 1 T w i = 1 H(x) = \sum_{i=1}^T w_i h_i(x), \quad \sum_{i=1}^T w_i = 1 H(x)=i=1Twihi(x),i=1Twi=1

w i w_i wi 一般是从训练数据中学习而得。

在个体学习器性能相差较大时使用加权平均法,反之使用简单平均法。

投票法

对于分类任务来说,假设有 { c 1 , c 2 , … , c N } \{ c_1, c_2, \dots, c_N \} {c1,c2,,cN} 个类别。最常用的结合策略是使用投票法:

  • 绝对多数投票法:

H ( x ) = { c j , i f ∑ i = 1 T h i j ( x ) > 0.5 ∑ k = 1 N ∑ i = 1 T h i k ( x ) ; r e j e c t , o t h e r w i s e H(x) = \begin{cases} c_j,& if \ \sum_{i=1}^T h_i^j(x) > 0.5\sum_{k=1}^N \sum_{i=1}^T h_i^k(x);\\ reject, & otherwise \end{cases} H(x)={cj,reject,if i=1Thij(x)>0.5k=1Ni=1Thik(x)otherwise

即某类别得票过半数,则预测为该类别;否则拒绝预测。

  • 相对多数投票法:

H ( x ) = c a r g m a x j ∑ i = 1 T h i j ( x ) H(x) = c_{argmax_j} \sum_{i=1}^T h_i^j(x) H(x)=cargmaxji=1Thij(x)

即预测为得票最多的类别,若同时有多个类别获得最高票,则从中随机选择一个类别。

  • 加权投票法:

H ( x ) = c a r g m a x j ∑ i = 1 T w i h i j ( x ) , ∑ i = 1 T w i = 1 H(x) = c_{argmax_j} \sum_{i=1}^T w_i h_i^j(x), \quad \sum_{i=1}^T w_i = 1 H(x)=cargmaxji=1Twihij(x),i=1Twi=1

学习法

当训练数据很多时,一种更为强大的结合策略是使用”学习法“,即通过另一个学习来结合,典型代表就是Stacking。这里把个体学习器称为初级学习器,用于结合的学习器称为次级学习器或元学习器。

Stacking先从初始数据集训练出初级学习器,然后”生成“一个新数据集用于训练次级学习器。在这个新数据集中,初级学习器的输出被当作样例输入特征,而初始样本的标记仍被当作样例标记。算法流程如下:

stacking

这篇关于Bagging RF的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/923173

相关文章

Jenkins--pipeline认识及与RF文件的结合应用

什么是pipeline? Pipeline,就是可运行在Jenkins上的工作流框架,将原本独立运行的单个或多个节点任务连接起来,实现单个任务难以完成的复杂流程编排与可视化。 为什么要使用pipeline? 1.流程可视化显示 2.可自定义流程任务 3.所有步骤代码化实现 如何使用pipeline 首先需要安装pipeline插件: 流水线有声明式和脚本式的流水线语法 流水线结构介绍 Node:

Bagging: 数量,而不是质量。

由 AI 生成:过度简化的树、引导聚合、集成方法、弱学习器、减少方差 集成方法 — 数量,而不是质量 一、说明         机器学习中的集成方法是指组合多个模型以提高预测性能的技术。集成方法背后的基本思想是聚合多个基础模型(通常称为弱学习器)的预测,以生成通常比任何单个模型更准确、更稳健的最终预测。一般而言,我们通常遵循质量胜于数量的原则。然而,在这种情况下,事实证

什么是机器学习中的 Bagging?带有示例的指南

文章目录 一、说明二、理解集成学习2.1 什么是 Bagging?2.2 Bagging 与 Boosting2.3 套袋的优点 三、Python 中的 Bagging:简短教程3.1 数据集3.2 训练机器学习模型3.3 模型评估 四、装袋分类器4.1 评估集成模型4.2 最佳实践和技巧 五、结论 ​ 一、说明    集成方法是机器学习中强大的技术,它可以结合多种模型来提高

RF射频信号布局布线要点

RF射频信号布局布线要点 一、射频产品布局要求: 1、布局采用一字型布局。在同一个屏蔽腔体内,布局时应该按RF主信号流一字布局由于空间限制,如果在同一个屏蔽腔内,RF主信号的元器件不能采用一字布局时,可以采用L形布局,不要用U字形布局。 2、相同单元的布局要尽量保证完全相同。有多个接收通道和发射通道,就要保证多个通道的布局和布线要完全相同。 3、布局时就要考虑RF主信号走向,和器件

【机器学习】集成学习的基本概念、Bagging和Boosting的区别以及集成学习方法在python中的运用(含python代码)

引言 集成学习是一种机器学习方法,它通过结合多个基本模型(通常称为“弱学习器”)来构建一个更加强大或更可靠的模型(“强学习器”) 文章目录 引言一、集成学习1.1 集成学习的核心思想1.2 常见的集成学习方法1.2.1 Bagging(装袋)1.2.2 Boosting(提升)1.2.3 Stacking(堆叠) 1.3 集成学习的优势1.4 集成学习的挑战1.5 总结 二、Bag

机器学习学习--Kaggle Titanic--LR,GBDT,bagging

参考,机器学习系列(3)_逻辑回归应用之Kaggle泰坦尼克之灾  http://www.cnblogs.com/zhizhan/p/5238908.html 机器学习(二) 如何做到Kaggle排名前2%  http://www.jasongj.com/ml/classification/ 一、认识数据 1.把csv文件读入成dataframe格式 import pandas as

集成学习之GBDT、XGBOOST、RF

GBDT&&XGBOOST 都属于GBM(GradientBoosting Machine)方法,传统GBDT以CART(分类回归树)作为基分类器,利用损失函数的负梯度方向在当前模型的值作为残差的近似值,可以说在RF的基础上又有进一步提升,能灵活的处理各种类型的数据,在相对较小的调参时间下,预测的准确度较高。 XGBOOST基学习器除了树,还支持线性分类器;XGBOOST在代价函数中加入了

6.0 —随机森林原理(RF)和集成学习(Bagging和Pasting)

我们这边先介绍集成学习 什么是集成学习 我们已经学习了很多机器学习的算法。比如KNN,SVM.逻辑回归,线性回归,贝叶斯,神经网络等等,而我们的集成学习就是针对某一个问题,我们使用多个我们已经学过的算法,每个算法都会得出一个结果。然后采用投票的方法,少数服从多数,得出最终结果。这就是voting classifier 我们看下代码: 我们手写的集成学习方法,和scikit-learn

巴伦射频变器(Balun RF Transformer)的常规产品通常包括以下几种类型

1:1 高频变压器: 用于将平衡和非平衡信号进行转换,通常在信号传输和接收电路中使用,如无线通信设备和各种高频电子设备中。 1:4 高频变压器: 主要用于阻抗匹配和信号传输,能够将低阻抗的平衡信号转换为高阻抗的非平衡信号,广泛应用于射频收发器件和天线系统。 双平衡变压器: 用于同时处理两个平衡信号的变压器,如应用于差分放大器和差分信号处理电路中。 4:1 高频变压器: 类似于1:4变压器,用

boosting,Adaboost,Bootstrap和Bagging的含义和区别

弱分类器:分类效果差,只是比随机猜测好一点。 强分类器:具有较高的识别率,较好的分类效果。(在百度百科中有提到要能在多项式时间内完成学习) 弱和强更大意义上是相对而言的,并没有严格的限定。比如准确率低于多少就是弱分类器,高于多少是强分类器,因具体问题而定。   1988年,有学者提出是否可以通过一些弱分类器来实现强分类器的分类效果。基于这个问题,之后两三年陆续的有早期的boosting算法