为什么xgboost训练会那么快,主要优化点是什么?

本文阅读 2 分钟
首页 知识库 正文

当数据集大的时候使用近似算法:在特征分裂时,根据特征k的分布确定个候选切分点。根据这些切分点把相应的样本放入对应的桶中,对每个桶的进行累加,最后通过遍历所有的候选分裂点来找到最佳分裂点。我们对这么多个桶进行分支判断,显然比起对n个样本找分裂节点更快捷。
Block与并行。分块并行,针对的是寻找最优切分点的过程中的排序部分。
CPU cache 命中优化。对于exact greedy算法中, 使用缓存预取。具体来说,对每个线程分配一个连续的buffer,读取梯度信息并存入Buffer中(这样就实现了非连续到连续的转化),然后再统计梯度信息。
Block预取、Block压缩、Block Sharding等

解压密码: detechn或detechn.com

免责声明

本站所有资源出自互联网收集整理,本站不参与制作,如果侵犯了您的合法权益,请联系本站我们会及时删除。

本站发布资源来源于互联网,可能存在水印或者引流等信息,请用户自行鉴别,做一个有主见和判断力的用户。

本站资源仅供研究、学习交流之用,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担。

Xgboost和GBDT有什么异同?
« 上一篇 07-11
《生命密码3:瘟疫传 》epub
下一篇 » 07-11

发表评论