问题标签 [gbm]

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 投票
2 回答
32824 浏览

r - 如何在 R 中使用 XGBoost 算法进行回归?

我正在尝试使用 XGBoost 技术进行预测。由于我的因变量是连续的,我使用 XGBoost 进行回归,但各种门户中可用的大多数参考资料都用于分类。虽然我知道通过使用

我们可以进行回归,但我仍然需要对其他参数进行一些澄清。如果有人可以为我提供它的 R 片段,那将是一个很大的帮助。

0 投票
1 回答
430 浏览

r - 使用在 R 包“dismo”中创建的“gbm”模型和 R 包“gbm”中的函数

这是我不久前提出的上一个问题的后续,该问题最近得到了回答。

我已经建立了几个gbm模型dismo::gbm.step,这些模型依赖gbm于 R 包中的拟合函数gbm,以及 R 包中的交叉验证工具splines

作为我分析的一部分,我想使用 R 中可用的一些图形工具(例如透视图)来可视化数据中的成对交互。gbmdismo包都具有检测和建模数据交互的功能。

dismoElith et 中解释了其中的实现。al ( 2008 ) 并返回一个统计数据,该统计数据表明模型预测偏离预测变量的线性组合,同时将所有其他预测变量保持在其平均值。

中的实现gbm使用 Friedman 的 H 统计量 ( Friedman & Popescue, 2005 ),并返回不同的度量标准,并且也没有按其平均值设置其他变量。

建模和绘制的交互dismo::gbm.interactions非常棒,并且提供了非常丰富的信息。但是,我也想使用gbm::interact.gbm,部分是为了发表强度,也是为了比较两种方法的结果。

如果我尝试gbm::interact.gbmgbm.objectcreated with中运行dismo,则会返回错误...</p>

我知道dismo::gmb.step添加了作者认为对gbm model.

我也明白我的问题的答案在源代码的某个地方。

我的问题是...

  1. 是否可以修改在gbm中创建的对象dismo以在中使用gbm::gbm.interact?如果是这样,这将通过......

    一个。修改gbm创建的对象dismo::gbm.step

    湾。修改源代码gbm::interact.gbm

    C。做别的事?

我将通过源代码尝试自己解决这个问题,如果我在任何人回答之前提出解决方案,我将回答我自己的问题。

0 投票
0 回答
1361 浏览

r - Tune gbm (R caret) - 网格搜索以获得最佳超参数

我用插入符号制作了一个模型,例如手动调整学习率和树:

但是灵敏度结果度量很差,不如特异性漂亮。

我想我需要创建一个网格搜索(像这样)以自动优化类别不平衡的概率阈值。

我该怎么做 ?有没有一个链接/一些可以指导我/有知识的人,比如随机森林的链接案例?

0 投票
3 回答
1327 浏览

r - R如何判断正负因子变量?

我想做一个二进制分类,一个级别是“top”,另一个是“bottom”。我在 h2o 包中使用 gbm 并将“底部”作为正类,将“顶部”作为负类。这是我的代码:

结果如下:

但我想正确预测更多的“顶部”。我尝试将阈值更改为 0.3,它的性能更好。但是,我是否应该在拟合过程中进行更改以对“ROC”指标等“顶部”做出更多预测?我应该将“顶部”翻转为正类,将“底部”翻转为负类,我该如何改变它?

0 投票
2 回答
745 浏览

r - 伯努利 vs Adaboost GBM?

我不太了解实际分配方面的区别= Adaboost 或bernoulli

我不明白为什么伯努利没有给出任何结果?我想我对它的工作原理有一个根本的误解?

我正在寻找: 1. 解释为什么伯努利不起作用。我以为文档说这可以用于分类?2.如果两者都可以用于分类,有什么实际区别?

0 投票
2 回答
2639 浏览

r - R中是否有GBM的并行实现?

我使用gbmR 中的库,我想使用我所有的 CPU 来拟合模型。

0 投票
1 回答
249 浏览

r - R中的GBM MissingNode

我正在玩 R 中的 GBM 包:

给我 :

当我查看 pred 与 UVI 的散点图时,我确实看到了大约 380 的分裂,两个终端值为 2.717099 和 3.029333。(1)如何将这些终端值与树的参数相协调?我应该能够从 SplitCodePred 派生它们,但我看不到连接 (2) 即使我的数据没有缺失值,缺失节点是否正常?(3)我对权重(“该节点中的观察总数”)感到困惑。为什么节点 3 的权重为 214,虽然没有丢失数据?

非常感谢,

罗兰

0 投票
1 回答
836 浏览

r - 将“h2o”函数结果输出到向量

我有一个与此类似的问题(链接),除了我的问题是指 java 工具“h2o”及其与“r”的连接。

特别是我想将“h2o”对象分配给向量(或结构或数组)的一部分。我想循环并存储其中的几个而不必手动枚举。

我在链接上尝试了解决方案,但它不适用于“h2o”对象。

这是我更长的代码(疣和所有):

我得到的错误是:

我的意图是拥有一个 GBM 的列表/结构/数组,然后我可以针对整个数据集运行预测,并剔除信息量较少的那些。我正在尝试按照 Eugene Tuv 的步骤制作一个体面的“gbt 随机森林”。我没有他的密码。

问题:
是否有适当的方法将 h2o gbm 及其几个(数百个)伙伴打包到 r 中的单个商店中?

如果引用的对象在 java 中被丢弃,使这种方法不可行,是否有使用“gbm”库的可行变体?如果我最终不得不使用 gbm,与 h2o 的速度差异是多少?

0 投票
1 回答
455 浏览

r - 从 C++ 调用 gbm 模型

我有一个 gbm 对象,我想从 C++ 中使用它。例如,predict.gbm()在 C++ 中使用新数据。起初,我尝试在 C++ 中翻译 if-else 规则,然后将树输出到文件中。但是,我发现 gbm 结果与它生成的树不匹配。例如,当我只使用第一棵树时,SplitCodePred树中的值与生成的值不匹配predict.gbm()。那么有人知道如何根据 gbm 模型手动进行预测吗?

0 投票
1 回答
1882 浏览

r - 在 R 中使用带有 GBM 的 NA 预测新数据

我有一些通过非随机过程生成 NA 的数据。通常,这涉及用户未手动输入数据或各种自动化作业的系统问题。因此,GBM 模型对我很有吸引力,因为它们对 NA 值的明确处理,而不是插补。但是,我在让 GBM 输出测试集中包含 NA 的行的预测时遇到问题。这是 Iris 的一个工作示例:

现在在样本预测中,正如我对 GBM 所期望的那样,我每行都收到一个预测。

但是,移至样本外测试数据不会为每一行返回一个预测。正如您在下面看到的,包含 NA 的每一行都不会返回预测。

因此,它似乎正在放弃对新数据进行预测的 NA。理想情况下,我希望在测试和训练数据集中的每一行上看到预测的 1-1 关系,但我不知道为什么 GBM 只会为训练返回这个,而不是测试集. 谢谢你的帮助。