当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R workflowsets as_workflow_set 将现有对象转换为工作流集


使用现有对象创建工作流集。简单工作流或具有类 "tune_results" 的对象列表可以转换为工作流集。

用法

as_workflow_set(...)

参数

...

一个或多个命名对象。名称应该是唯一的,并且对象应该至少具有以下类之一: workflowiteration_resultstune_resultsresample_resultstune_race 。每个tune_results 元素还应包含原始工作流程(使用控制函数中的save_workflow 选项完成)。

工作流程集。请注意,option 列不会反映用于创建每个对象的选项。

注意

该软件包提供两个预生成的工作流程集 two_class_setchi_features_set ,以及适合 two_class_reschi_features_res 的相关模型集。

two_class_* 对象基于使用 modeldata 包中的 two_class_dat 数据的二元分类问题。这六个模型利用裸公式或基本配方,利用 recipes::step_YeoJohnson() 作为预处理器,以及决策树、逻辑回归或 MARS 模型规范。有关源代码,请参阅?two_class_set

chi_features_* 对象基于使用 modeldata 包中的 Chicago 数据的回归问题。这三个模型均采用线性回归模型规范,具有不同复杂性的三种不同配方。这些对象旨在近似 Kuhn 和 Johnson (2019) 第 1.3 节中构建的模型序列。有关源代码,请参阅?chi_features_set

例子


# ------------------------------------------------------------------------------
# Existing results

# Use the already worked example to show how to add tuned
# objects to a workflow set
two_class_res
#> # A workflow set/tibble: 6 × 4
#>   wflow_id      info             option    result   
#>   <chr>         <list>           <list>    <list>   
#> 1 none_cart     <tibble [1 × 4]> <opts[3]> <tune[+]>
#> 2 none_glm      <tibble [1 × 4]> <opts[3]> <rsmp[+]>
#> 3 none_mars     <tibble [1 × 4]> <opts[3]> <tune[+]>
#> 4 yj_trans_cart <tibble [1 × 4]> <opts[3]> <tune[+]>
#> 5 yj_trans_glm  <tibble [1 × 4]> <opts[3]> <rsmp[+]>
#> 6 yj_trans_mars <tibble [1 × 4]> <opts[3]> <tune[+]>

results <- two_class_res %>% purrr::pluck("result")
names(results) <- two_class_res$wflow_id

# These are all objects that have been resampled or tuned:
purrr::map_chr(results, ~ class(.x)[1])
#>          none_cart           none_glm          none_mars 
#>     "tune_results" "resample_results"     "tune_results" 
#>      yj_trans_cart       yj_trans_glm      yj_trans_mars 
#>     "tune_results" "resample_results"     "tune_results" 

# Use rlang's !!! operator to splice in the elements of the list
new_set <- as_workflow_set(!!!results)

# ------------------------------------------------------------------------------
# Make a set from unfit workflows

library(parsnip)
library(workflows)

lr_spec <- logistic_reg()

main_effects <-
  workflow() %>%
  add_model(lr_spec) %>%
  add_formula(Class ~ .)

interactions <-
  workflow() %>%
  add_model(lr_spec) %>%
  add_formula(Class ~ (.)^2)

as_workflow_set(main = main_effects, int = interactions)
#> # A workflow set/tibble: 2 × 4
#>   wflow_id info             option    result
#>   <chr>    <list>           <list>    <list>
#> 1 main     <tibble [1 × 4]> <opts[0]> <NULL>
#> 2 int      <tibble [1 × 4]> <opts[0]> <NULL>

相关用法


注:本文由纯净天空筛选整理自Max Kuhn等大神的英文原创作品 Convert existing objects to a workflow set。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。