如何访问由基准拟合的参数?

问题描述

这是一个非常基本的问题,但我还没有在其他网站上找到答案,所以我不得不在这里问一下。

我使用了来自 mlr3 库的 benchmark(design,store_models) 函数拟合了我的“classif.ranger”学习器,我需要访问拟合参数 (obv)。 我在基准文档中一无所获,因此我尝试以艰难的方式进行: -> 我将 store_models 设置为 TRUE -> 我尝试使用 fit() 访问模型,但它返回 NULL。

我知道这个问题很基本,而且我可能做的很蠢(例如,误读了文档或类似的东西),但我只是不知道如何实际访问参数......请帮忙。

>

如果在这种(可能)微不足道的情况下需要它,代码如下:

library(data.table)
library(mlr3)
library(mlr3learners)
library(mlr3filters)
library(mlr3fselect)
library(mlr3tuning)
library(ranger)
library(paradox)

这是一些与问题无关的代码 现在相关代码

measure = msr("classif.auc")

tuner = tnr("random_search")

ranger_space = ParamSet$new(list(
  ParamInt$new("num.trees",lower = 700,upper = 2000),ParamInt$new("mtry",lower = 1,upper = 15)
))

rf_learner <- lrn("classif.ranger",predict_type = "prob")

at = AutoTuner$new(
    learner = rf_learner,resampling = rsmp("holdout"),measure = measure,search_space = ranger_space,terminator = trm("evals",n_evals = 25),tuner = tuner
  )

pred_task <- TaskClassif$new(id = "predict",backend = dataSet,target = "will_it_sell")

grid = benchmark_grid(
    task = pred_task,learner = list(at,rf_learner),resampling = rsmp("cv",folds = 3)
  )
  
rf_benchmark = benchmark(design = grid,store_models = TRUE)
result = rf_benchmark$aggregate(measure)
result

解决方法

mlr3book 是 mlr3 的文档,其中有一部分是关于您的问题:https://mlr3book.mlr-org.com/benchmarking.html#bm-resamp

请不要混用 R 和 RStudio,它们是两种不同的东西。 RStudio 从来没有任何功能。

,

您可以使用 getBMRModels() 获取模型,它会告诉您使用哪些超参数来拟合它们。见the benchmark section of the documentation

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...