SuperAPI AI 工具集

tidymodels-overview

办公与效率

查看项目

更新于 10-15 23:42

技能介绍

用途:在 R 中开展机器学习建模时,提供 tidymodels 生态的整体上下文,帮助理解各包如何组合成一致、模块化的流程。

主要能力:覆盖数据划分与重采样(rsample)、预处理规格(recipes)、模型规格(parsnip)、流程打包(workflows)、超参数调优(tune)、性能指标(yardstick),以及多流程比较(workflowsets)、模型集成(stacks)和底层基础设施(hardhat)。

核心概念:recipe 是预处理步骤的规格说明,添加 step_normalize() 等步骤不会立即转换数据;只有 prep() 从训练数据估计参数、bake() 将已 prep 的 recipe 应用到新数据时才真正执行转换。

标准流程:先用 initial_split() 划分训练/测试集,用 vfold_cv() 做重采样;再用 recipe() 与 step_*() 定义预处理;用模型函数配合 set_engine()、set_mode() 定义模型;用 workflow() 结合 add_recipe() 与 add_model() 打包;用 tune_grid() 调参、select_best() 选优;最后 finalize_workflow() 与 last_fit() 在完整训练数据上拟合,并用 collect_metrics() 提取测试集指标。

用法要点:应使用包提供的函数而非直接修改对象内部;应使用 tidyselect 选择器(如 all_numeric_predictors())而非手工字符串匹配;自定义角色在 bake() 时默认必需,可用 update_role_requirements() 调整;workflow_set 中所有流程必须预测同一结果变量。

适用场景:简单模型用 recipes + parsnip + workflows;需要调参加 tune;需要比较多个流程加 workflowsets;需要集成加 stacks(需 save_pred = TRUE、save_workflow = TRUE);需要自定义预处理接口用 hardhat。

限制:资料未提供具体版本、安装命令、收费或性能数据;详细包文档与常见问题见 references/packages.md 与 references/common-problems.md,外部文档见 tidymodels.org 等站点。