问题标签 [mlr3]

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 投票
1 回答
223 浏览

xgboost - 为什么 xgboost 在与 mlr3 一起使用时不计算所有变量的重要性?

所以,我使用的是在这里找到的超导数据集……它包含 82 个变量,我将数据子集为 2000 行。但是当我使用xgboostmlr3时并没有计算所有变量的重要性!?

这是我设置所有内容的方式:

这会输出如下内容:

正如你所看到的,那里只有 11 个变量......什么时候应该有 81 个ranger......

关于正在发生的事情有什么建议吗?

0 投票
1 回答
242 浏览

r - 合奏的 MLR3 平均分数

使用非常有用的mlr3 book中的一个示例,我试图简单地返回堆叠模型输出的平均分数。有人可以解释一下如何使用 mlr3 做到这一点吗?我尝试使用LearnerClassifAvg$new( id = "classif.avg")po("classifavg"),但不确定我是否正确应用了这些,谢谢

例子:

0 投票
1 回答
114 浏览

r - 使用 mlr3 PipeOps 创建具有不同数据子集的分支

我想在不同的数据子集上训练模型mlr3,我想知道是否有办法在管道中的不同数据子集上训练模型。

我想做的类似于R for Data Science - Chapter 25: Many models中的示例。假设我们使用相同的数据集 ,gapminder该数据集包含世界各国的不同变量,例如 GDP 和预期寿命。如果我想为每个国家/地区训练预期寿命模型,是否有一种简单的方法可以使用创建这样的管道mlr3

理想情况下,我想mlr3pipelines在图中为每个子集创建一个分支(例如,每个国家/地区的一个单独的分支),最后有一个模型。因此,最终图将从单个节点开始,并n在末端节点训练有素的学习器,数据集中的每个组(即国家)一个,或者聚合结果的最终节点。我还希望它适用于新数据,例如,如果我们在未来获得 2020 年的新数据,我希望它能够使用为该特定国家训练的模型为每个国家创建预测。

我发现的所有mlr3示例似乎都处理整个数据集的模型,或者使用训练集中的所有组训练了模型。

目前,我只是为每组数据手动创建一个单独的任务,但是将数据子集步骤合并到建模管道中会很好。

0 投票
1 回答
194 浏览

r - mlr3:从 surv.gbm 获得响应(预测生存时间)

mlr3 框架中的 surv.gbm 输出线性预测变量,但我真正感兴趣的是每个案例的预测生存时间,我想将其与实际生存时间进行比较。有没有办法获得实际的生存时间?

在 mlr3 书中,有一个线性预测变量和分布之间的转换示例。

有没有办法改变这个管道,以便将 "lp" 转换为 "response" ?

任何帮助都将不胜感激。

0 投票
2 回答
212 浏览

r - mlr3 - 对新数据应用预处理

在这里使用lmr3verse包。假设我对用于训练的训练集应用了以下预处理Learner

我想使用命令预测数据框中(带有原始变量)中包含的新观察结果的pred标签predict(Learner, newdata = pred, predict_type="prob")。这是行不通的,因为Learner它是使用居中、缩放和单热编码变量进行训练的。

如何将训练集上使用的相同预处理应用于新数据(仅特征,而不是响应)以进行预测?

0 投票
1 回答
134 浏览

r - mlr3 - 预测的置信区间

在调整学习器并使用它之后,我们可以使用它通过命令行进行预测

但是,我们如何计算预测的置信区间?


0 投票
1 回答
365 浏览

r - mlr3 将最终模型保存在哪里?

训练学习者后,将最终模型保存在哪里mlr3--- learner$train(data)?通过“最终模型”,我的意思是类似于由以下代码生成的列表:

有没有办法提取这个列表/对象?


0 投票
1 回答
117 浏览

r - mlr3 - 如何使用“mlr3”接口删除不完整的观察

task <- TaskRegr$new("data", data, "y") 是否可以使用过滤器或管道删除任务中的不完整观察mlr3

0 投票
1 回答
46 浏览

mlr3 - mlr3 - 编辑`task$data()`

有没有办法用完全相同的 colnames编辑task$data()或替换它?data.frame()

我已经尝试了以下task_train$data() <- newDFtask_train$data <- newDF. 它们都分别导致Error in task_train$data() <- di : invalid (NULL) left side of assignmentError in task_train$data <- newDF: cannot change value of locked binding for 'data'

0 投票
1 回答
209 浏览

r - 带有 mlr3::autoplot() 的 ROC 曲线用于“保持”重采样的基准测试

我正在使用 mlr3 包,我想为不同的模型绘制 ROC 曲线。如果我按照文档中的说明使用交叉验证,它工作得很好,但是如果我使用“holdout”进行重采样,那么我会得到一个错误Error: Invalid show_cb. Inconsistent with calc_avg of evalmod.

这是代码:

感谢您的帮助,马修