如何解决如何解释和控制 XGBRegressor 树模型选择的参数
我正在使用 scikit-learn 对连续变量进行预测
数据:
数据类型:
我正在使用基于频率的编码将分类列 geneName,drugName
转换为数值,(每列有超过 100 个类别)
EL
列有 6 个类别,我使用标签编码将其映射为数值
训练模型:
我正在使用这些超参数训练模型:
import xgboost as xgb
xgbr=xgb.XGBRegressor(
colsample_bytree=0.8,max_depth=15,n_estimators=1000,reg_alpha=1.1,reg_lambda=1.3,subsample=0.7)
xgbr.fit(x_train,y_train)
结果: 训练模型后,这些指标的结果如下:
score : 0.9855
Mean cross-validation score: 0.97
MSE: 0.00035
RMSE: 0.01874
交叉验证计算如下:
kfold = KFold(n_splits=10,shuffle=True)
kf_cv_scores = cross_val_score(xgbr,x_train,y_train,cv=kfold )
并给了:
K-fold CV average score: 0.97
这是模型树打印的图像:tree model image
我的问题:
- 打印树模型,我看到许多树叶节点的值为 -0。为什么?
- 如何控制树中使用的选择参数?因为看起来 xgboost 正在选择同一变量的多个拆分。
- 您对这些预测有何看法?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。