首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XGboost分类器

XGboost分类器
EN

Stack Overflow用户
提问于 2019-10-03 23:49:24
回答 1查看 59关注 0票数 0

我是XGBoost的新手,目前正在做一个项目,在这个项目中我们已经构建了一个XGBoost分类器。现在我们想运行一些特征选择技术。对于这一点,反向消除方法是一个好主意吗?我在回归中使用过它,但我不确定是否/如何在分类问题中使用它。任何线索都将非常感谢。

注意:我已经尝试过排列线重要性,并取得了很好的效果!寻找另一种方法来评估模型中的特征。

EN

回答 1

Stack Overflow用户

发布于 2019-10-04 00:10:05

考虑在交叉验证上问你的问题,因为功能选择更多的是理论/实践而不是代码。

你担心的是什么?去掉那些会降低你的结果的“嘈杂”特征,获得一个稀疏模型?当然,向后选择是一种方法。也就是说,不知道你是否知道这一点,但是XGBoost会计算它自己的“变量重要性”值。

代码语言:javascript
复制
# plot feature importance using built-in function
from xgboost import XGBClassifier
from xgboost import plot_importance
from matplotlib import pyplot
model = XGBClassifier()
model.fit(X, y)
# plot feature importance
plot_importance(model)
pyplot.show()

就像这样。这一重要性取决于使用特征进行分割的次数。然后,您可以定义一个阈值,例如,您不能将变量保持在该阈值以下。但是,请不要忘记:

  • 此变量重要性仅在训练数据上获得
  • 移除具有高重要性的变量可能不会影响您的预测误差,例如,如果它与另一个高度重要的变量相关。其他像这样的把戏也可能存在。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58222727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档