MLR:未找到函数 "predict.WrappedModel"

标签 mlr

我正在使用 R 3.6.1、RStudio 1.2.5019 和 mlr 2.15.0。 MLR 已安装并加载。仅加载 mlr 和构建 mlr 的包。

现在,我已经使用 train 训练了一个模型,并想在新数据上测试它。 因此,我想使用 mlr 中的 predict.WrappedModel 函数。

如果我打电话 ?predict.WrappedModel 我在帮助窗口中获取了所有信息。

但是,如果我想运行 predict.WrappedModel R 会抛出一个错误,指示找不到该函数:

my_test = Predict.WrappedModel(object = my_model, task = my_task)

konnte Funktion "predict.WrappedModel" nicht finden

即使指定 mlr 作为要查找函数的包:

my_test = mlr::predict.WrappedModel(object = my_model, task = my_task)

Fehler: 'predict.WrappedModel' ist kein von 'namespace:mlr' exportiertes Objekt

我也尝试过使用 ?predict ,但这里我也遇到了错误:

my_test = mlr::predict(object = my_model, task = my_task)

Fehler: 'predict' ist kein von 'namespace:mlr' exportiertes Objekt

我已经花了很多时间尝试解决这个问题,并阅读了我在此处和 github 上的 mlr 论坛上找到的所有相关问题,但找不到解决方案。

我在这里缺少什么?

提前非常感谢:)

最佳答案

您既不需要 predict.WrappedModel 也不需要 mlr::predict。两者都是内部函数,使用 R 中的通用 S3 方法根据提供的 R 对象的类进行操作。

因此,在这种情况下,只要传递从 mlr::train() 调用派生的对象,一切都会正常工作。

用代码说话:

library("mlr")
my_model = train(learner, task)
predict(my_model, task)

关于MLR:未找到函数 "predict.WrappedModel",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58714293/

相关文章:

hyperparameters - R-MLR : tuning hyper parameters using ' makeTuneControlRandom ' for a wrapped learner

r - 运行mlr包中的predict()函数时出错

r - 如果特定学习者在特定任务上失败,如何使基准函数不会失败?

r - 我们可以在 mlr 中使用预定义的列进行 CV(重采样)吗?

mlr - 在具有主题 ID 的 MLR 中阻止交叉验证

在 Ubuntu 18.04 上的 mlr R 包中运行随机搜索需要太长时间

r - 列出 MLR 中的学习者,包括未安装的学习者

r - 如何处理虚拟特征