我正在从sklearn学习中使用GBDT,我想知道是否有什么方法可以获取经过培训的最终GBDT树信息?我的理解是,如果我为每棵树设置最大500棵树和最大10棵树的深度,那是一个上限,我想获得一个实际使用的树数和每棵树的实际深度。
答案 0 :(得分:1)
链接到的文档页面列出了以下属性:
estimators_ : ndarray of DecisionTreeRegressor,shape (n_estimators, loss_.K)
The collection of fitted sub-estimators. loss_.K is 1 for binary classification, otherwise n_classes.
因此,您应该能够按照将它们添加到模型的顺序来获取单个树。
其他注释:模型中使用的树的实际数量将等于参数n_estimators
,除非使用了提前停止,否则它的数量可能会更少,并存储在以下属性中:
n_estimators_ : int
The number of estimators as selected by early stopping (if n_iter_no_change is specified). Otherwise it is set to n_estimators
深度被最大化,除非每个叶子/拆分没有足够的样本和其他参数限制。