小编veg*_*tvd的帖子

使用 mlr-package 构建模型时的自定义性能度量

我刚刚针对我目前正在处理的特定问题进行了从caret到的切换mlr。我想知道这里是否有人熟悉在resample()函数中指定自定义性能度量。

这是一个可重现的代码示例:

library(mlr)
library(mlbench)

data(BostonHousing, package = "mlbench")

task_reg1  <- makeRegrTask(id = "bh", data = BostonHousing, target = "medv")
lrn_reg1   <- makeLearner(cl = "regr.randomForest",
                        predict.type = "response",
                        mtry=3) 
cv_reg1 <- makeResampleDesc("RepCV", folds = 5, reps = 5)

regr_1 <- resample(learner = lrn_reg1,
                     task = task_reg1,
                     resampling = cv_reg1,
                     measures = mlr::rmse)
Run Code Online (Sandbox Code Playgroud)

我想计算平均绝对比例误差,而不是计算 RMSE 。例如,可以在Metrics包中找到用于此的函数:Metrics::mase()

我试图measures = Metrics::mase直接包含在resample()调用中,但正如预期的那样,有点乐观,我收到以下错误: Error in checkMeasures(measures, task) : Assertion on …

r function machine-learning mlr performance-measuring

2
推荐指数
1
解决办法
105
查看次数