博客
关于我
gbdt子采样参数的理解
阅读量:321 次
发布时间:2019-03-03

本文共 715 字,大约阅读时间需要 2 分钟。

随机森林和GBDT的子采样机制有着不同的实现方式,这一点在理解它们的工作原理时非常重要。

随机森林采用的子采样方式是有放回的。这意味着在每次抽取样本时,抽取的样本可能包含重复的数据。最极端的情况下,所有样本都可能被抽中。这种方式的优势在于可以确保每棵随机森林的训练过程都能充分利用原始数据集的完整信息,尤其在样本量较小的情况下。

GBDT(梯度提升树)采用的子采样方式则是无放回的。这意味着在训练每一棵决策树时,抽取的样本不会重复使用。例如,如果原始数据集包含100个样本,GBDT在训练第一棵决策树时可能会抽取80个样本,训练第二棵树时则会从剩下的20个样本中抽取,这样每棵树都会基于不同的样本集进行训练。

对于GBDT而言,这种无放回的抽样方式意味着每棵决策树都会基于不同的样本集进行训练,这种机制可以有效地增加模型的多样性。然而,这也意味着GBDT的每棵树都需要在不同的训练数据集上进行训练,这种特性可能会让一些人对其工作机制感到困惑。

一个常见的误解是认为GBDT的子采样是基于整体样本集进行的抽样,且每次抽样都遵循一定的比例(如80%或20%)。这可能会导致对GBDT的理解出现偏差,因为人们可能会认为每棵树都基于同一个整体样本集进行抽样,而实际上,GBDT的每棵树都基于独立的子样本集进行训练。

因此,正确的理解应该是GBDT的子采样是针对每一次抽取样本的。每棵决策树都会从原始数据集中独立地抽取样本,而不是基于之前抽取的样本集。这与随机森林的有放回抽样机制有着本质的区别。

通过这种方式,GBDT可以在每棵决策树中都充分利用原始数据集的信息,同时避免了样本之间的重复使用,这种机制也为模型的多样性和鲁棒性提供了支持。

转载地址:http://gsgm.baihongyu.com/

你可能感兴趣的文章
Object Oriented Programming in JavaScript
查看>>
object references an unsaved transient instance - save the transient instance before flushing
查看>>
Object 类的常见方法有哪些?
查看>>
Object-c动态特性
查看>>
Object.assign用法
查看>>
Object.create
查看>>
Object.defineProperty详解
查看>>
Object.keys()的详解和用法
查看>>
objectForKey与valueForKey在NSDictionary中的差异
查看>>
Objective - C 小谈:消息机制的原理与使用
查看>>
OBJECTIVE C (XCODE) 绘图功能简介(转载)
查看>>
Objective-C ---JSON 解析 和 KVC
查看>>
Objective-C 编码规范
查看>>
Objective-Cfor循环实现Factorial阶乘算法 (附完整源码)
查看>>
Objective-C——判断对象等同性
查看>>
objective-c中的内存管理
查看>>
Objective-C之成魔之路【7-类、对象和方法】
查看>>
Objective-C享元模式(Flyweight)
查看>>
Objective-C以递归的方式实现二叉搜索树算法(附完整源码)
查看>>
Objective-C内存管理教程和原理剖析(三)
查看>>