随机森林、XGBoost

目录

一、树的集成:

1.单一决策树模型的缺陷:

使用单个决策树的缺点是该决策树可能会对数据中的微小变化高度敏感

如上图所示,仅仅改变数据集中的一个样本,会导致决策树模型根结点选取不同的特征,从而产生一棵完全不同的树,这使得该模型缺乏健壮性

2.什么是树的集成:

利用单一决策树的缺陷,通过改变数据集来训练多棵不同的决策树模型 ,将多个决策树模型进行集成作为最终模型。在预测阶段将特征同时输入多棵决策树中,最终预测结果由多棵决策树投票决定。

具体算法如下:

3.树的集成中如何构建多个训练集:

为了集成树,需要训练多个决策树模型。通过构建多个训练集来训练多个不同的决策树模型。

对于原始训练集,采用有放回随机抽样 的方式来构建多个训练集,其中每个训练集中样本的数目与原始训练集相同

二、树的集成优化:随机森林:

随机对树的集成中结点的特征选择方式进行了改进,具体来说

相比于上述算法,随机森林注意到了如果构建的训练集过于相似有可能造成两棵决策树相同,为了避免这种情况,随机森林进行了如下改动来进一步随机化使得每棵决策树之间彼此不同,进而得到更加精确的模型:

即在决策树训练过程中结点的特征选择时增加了随机化属性,原来可以在所有特征中计算信息增益选择最终特征,现在只能在随机选取的k个特征中计算信息增益选择最终特征。

三、树的集成优化:XGBoost:

XGBoost对树的集成中训练集的构建方式进行了改进,具体来说:

在XGBoost中,每次训练新的决策树时,会结合之前已经训练好的所有决策树的预测结果(将原始训练集依次输入之前训练好的所有决策树中执行预测),记录各个决策树预测失败的样本。新的决策树在选取样本组成训练集的时候会有更高的概率选中那些之前决策树预测失败的样本。

相关推荐
DuHz1 小时前
论文精读:大语言模型 (Large Language Models, LLM) —— 一项调查
论文阅读·人工智能·深度学习·算法·机器学习·计算机视觉·语言模型
加农炮手Jinx1 小时前
LeetCode 72. Edit Distance 题解
算法·leetcode·力扣
借雨醉东风1 小时前
程序分享--常见算法/编程面试题:旋转矩阵
c++·线性代数·算法·面试·职场和发展·矩阵
_深海凉_1 小时前
LeetCode热题100-打家劫舍
算法·leetcode·职场和发展
jghhh012 小时前
使用 MATLAB 实现支持向量回归 (SVR) 预测未来数据
算法·matlab
云泽8082 小时前
笔试算法 - 双指针篇(二):四大经典求和题型 + 有效三角形计数问题
c++·算法
罗西的思考3 小时前
【OpenClaw】通过 Nanobot 源码学习架构---(10)Heartbeat
人工智能·机器学习
哥布林学者4 小时前
深度学习进阶(十二)可变形池化 deformable RS RoI Pooling
机器学习·ai
刀法如飞4 小时前
【合并已排序数组的三种实现策略,哪一种更可取?】
算法·程序员
王老师青少年编程4 小时前
csp信奥赛C++高频考点专项训练之贪心算法 --【区间贪心】:种树
c++·算法·贪心·csp·信奥赛·区间贪心·种树