从训练过的xgboost模型中提取树和权重

时间:2018-08-04 01:32:12

标签: machine-learning scikit-learn decision-tree xgboost lightgbm

我已经用大约X棵树训练了一个xgboost模型。我想使用完全相同的超级参数创建模型的某些副本,但是要修剪树的数量。例如,我想创建一个具有相同权重和参数且只有一半树木的模型。是否可以使用xgboost api来做到这一点。

我尝试了一种天真的快速方法,即对已训练的xgboost模型进行反序列化,并将booster_params ['num_boost_round']重置为原来的一半。但这似乎并没有影响任何模型质量和预测分数,这意味着在评分/评估时不使用此参数。

剩下的唯一选项是转储文本或pmml文件,并用树的子集解析回去。想知道是否可以使用xgboost api本身(例如更改会带来相同效果的参数)而不转换为单独的表示形式/格式并自行解析。

0 个答案:

没有答案