我第一次使用{tidymodels}
中的{workflowsets}
,下面是使用R进行潮汐建模的章节。
在书中,作者使用了一个固定的、规则的网格超参数搜索:
grid_results <-
all_workflows %>%
workflow_map(
fn = "tune_grid",
seed = 1503,
resamples = concrete_folds,
grid = 25, # See note below
control = grid_ctrl
)
tune::tune_grid()
函数的帮助指定"[a]n integer表示要自动创建的候选参数集的数量。">
虽然这对我来说很有效,但我想尝试一种填充空间的设计,比如用dials::grid_max_entropy
创建的设计。但是,此函数(与{tune}
中的所有网格生成函数非常相似(需要参数或的参数集对象。
我如何从工作流集中整体提取参数,就像workflowsets
还没有parameters
方法一样?
谢谢!
编辑:为了清楚起见,在workflow_map
中添加了fn
参数,尽管书中没有它(tune_grid
是参数的默认值(。
我在这个GitHub问题中引用了Max Kuhn的答案
最好的方法是使用option_add((。在即将发布的博客文章中有一个这样做的例子(但要为网格定义一个自定义参数范围(。你可以做:
wflow_set <-
wflow_set %>%
option_add(grid = some_grid, id = "some wflow_id")
此外,我发现马克斯·库恩的这篇演讲非常有用。即幻灯片24示出了";将个别选项传递给模型";。这是演示的YouTube链接(https://www.youtube.com/watch?v=2OfTEakSFXQ)