You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言中XGBoost的max_leaves参数未按预期生效问题

XGBoost max_leaves 参数约束未生效问题

我通过R生成均匀随机的合成数据,构建了一个XGBoost模型,设置参数为8轮迭代、max_depth=5且max_leaves=4(其余参数保持默认),随后绘制树结构。按预期每棵树的叶节点数量最多应为4个,但实际生成的树至少有20个叶节点,max_leaves的约束完全没有生效。我的环境是2025年11月14日全新安装的R 4.5.2,操作系统为Windows 11。

运行代码

install.packages('xgboost')
install.packages('DiagrammeR')
library(DiagrammeR)
library(xgboost)
df = matrix(runif(100000 * 50), nrow = 100000)
dep = as.matrix(runif(100000), ncol = 1)
params = list(
    max_depth = 5,
    max_leaves = 4
)
df2 = xgb.DMatrix(
    data = df,
    label = dep,
    weight = rep(1, nrow(df))
)
x = xgboost(
    params = params,
    data = df2,
    nrounds = 8
)
xgb.plot.tree(model = x, trees = 1)

问题示例图

某次随机运行中生成的第2棵树的结构图

内容的提问来源于stack exchange,提问作者David Martin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 01:18:13