问题标签 [xgbclassifier]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
136 浏览

python - AttributeError:“HyperbandSearchCV”对象没有属性“_get_param_iterator”

我正在尝试hyperbandXGBoost模型上执行,如下所示,但我收到此错误消息:

][1]

我用来运行的代码hyperband是:

0 投票
1 回答
50 浏览

python - 打印出具有最大/最佳 AUC 分数的最佳参数

我正在做超参数调整,我无法将最大 AUC 分数与最佳参数一起打印出来。看我下面的代码。它只打印 'Best params: None, AUC: inf' 而不是 'Best params: 5, AUC: 87.1'

0 投票
0 回答
145 浏览

python - 当 `colsample_bytree` 不是 1 时,xgb.cv 的 auc 分数与 cross_val_score 不匹配

我正在研究高度不平衡的数据集。在超参数调优过程中,我发现如果colssample_bytree设置为 1 以外的值,那么cross_val_score从 sklearn 包中获取的 auc 分数与从xgb.cv.

xgb.cv 代码:

这导致 test-auc-mean 为 0.91706

cross_val_score 代码:

这导致 test-auc-mean 为 0.8994

我不明白这些之间的巨大差异,正如我已经指出的那样,如果colsample_bytree设置为 1,那么分数之间没有差异。随着我们减少,分数之间的差异auc也会显着增加colsample_bytree

有人可以帮助我理解为什么会这样。谢谢

0 投票
1 回答
962 浏览

python - RandomForest 和 XGB 为什么/如何?对此有什么可以做的吗?

从树解释器返回的 SHAP 值为.shap_values(some_data)XGB 和随机森林提供了不同的维度/结果。我试过调查它,但似乎无法找到原因或方式,或者在任何 Slundberg 的(SHAP dude's)教程中的解释。所以:

  • 我失踪有什么原因吗?
  • 是否有一些标志可以为每个类返回 XGB 的 shap 值,就像其他不明显或我遗漏的模型一样?

下面是一些示例代码!

输出:

任何想法都是有帮助的!谢谢!

0 投票
1 回答
1117 浏览

python - 为什么调用 fit 会重置 XGBClassifier 中的自定义目标函数?

我已尝试根据文档设置 XGBoost sklearn APIXGBClassifier以使用自定义目标函数 ( brier):

这是我的尝试:

它似乎导致正确的对象:

但是,调用.fit方法似乎将m对象重置为默认设置:

objective='binary:logistic'. 我注意到,在调查为什么我在直接优化时brier比使用默认时得到更差的 brier 分数,如此binary:logistic所述。

那么,如何正确设置XGBClassifier以将我的函数brier用作自定义目标?

0 投票
1 回答
173 浏览

python - 使用 GridSearchCV 调整超参数

我是机器学习的新手,我正在尝试在给定一个标记数据集的情况下预测一篇文章的主题,每个数据集都包含一篇文章中的所有单词。共有 11 个不同的主题,每篇文章只有一个主题。我已经建立了一个流程管道:

我正在尝试实现一个 GridsearchCV 来找到最好的超参数:

这很好用,但是,如何调整 XGBClassifier 的超参数?我试过使用符号:

它不起作用,因为 GridSearchCV 正在寻找 OneVsRestClassifier 的超参数。如何实际调整 XGBClassifier 的超参数?另外,您建议哪些超参数值得针对我的问题进行调整?

0 投票
0 回答
256 浏览

r - 为什么 SHAP 值加起来不等于预测概率?

我想知道我的以下设置对于使用 CARET 的 xgbDART 方法从模型生成 SHAP 值是否正确。在这种特殊情况下的问题是 SHAP 值rowSums()加起来不等于预测分数。任何方向都会非常有帮助。这是我的设置:

0 投票
1 回答
1105 浏览

python - KeyError: 'base_score' 同时拟合 XGBClassifier

使用 Gridsearch,我在拟合训练数据后找到了最佳超参数:

最佳答案是使用 获得{'max_depth': 4, 'n_estimators': 50}。这就是我使用这些超参数创建新模型的原因:

当我尝试将模型拟合到我的数据时:model_xgb_tn.fit(train_X,y_train),我收到一个KeyError: 'base_score'. 当我什至没有使用超参数时,我只是无法理解为什么会出现 KeyError。

下面是错误代码:

0 投票
1 回答
1378 浏览

python - XGBoostError:参数 num_class 的值 0 应大于等于 1

我正在尝试比较两个不同的功能集,以将客户分为高价值、中价值和低价值。这是我使用的代码:

第一个数据集在训练数据中有 11 个客户,在测试数据中有 2 个客户。尽管客户数量有限,分类器仍能够为其中一个特征集实现 50% 的精度。

第二个数据集在训练数据中有 14 个客户,在测试数据中有 2 个客户。虽然我们有一个更大的训练集,但分类器抛出了一个错误:

XGBoostError:参数 num_class 的值 0 应大于等于 1

论坛上之前的帖子都提到过 .fit() 方法会自动设置num_class参数。见这里:XGBClassifier num_class is invalid。因此,问题似乎是由其他原因引起的。

有人知道问题出在哪里吗?任何帮助表示赞赏!

0 投票
1 回答
1530 浏览

python - XGBoost,XGBClassifier:未知的目标函数错误

我正在尝试训练 XGBClassifier,但出现此错误。我正在使用 xgboost 1.1.0 版。我使用 pip install xgboost 来安装 xgboost,我也升级了它。