You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在mlr3tuningspaces中为xgboost hyperband优化设置budget标签

mlr3中使用默认调优空间运行Hyperband的budget标签配置方法

lts()返回的默认搜索空间默认不会给控制训练轮次的nrounds参数打上Hyperband强制要求的budget标签,不用手动重写整套搜索空间,直接修改参数集的标签属性就能完成适配。

操作逻辑

  1. 用lts()加载xgboost的官方默认搜索空间
  2. 给搜索空间内的nrounds参数追加budget标签
  3. 按需调整nrounds的取值范围,匹配你预期的最大训练轮次预算
  4. 直接把处理好的搜索空间传入tune()函数,即可正常运行Hyperband调优

可运行复现代码

library(mlr3verse)
library(mlr3hyperband)
library(mlr3tuningspaces)

# 加载官方默认调优搜索空间
search_space = lts("classif.xgboost.default")

# 给nrounds添加Hyperband要求的budget标签
search_space$tags$nrounds = c(search_space$tags$nrounds, "budget")

# 按需调整nrounds的取值范围,默认范围可能不符合Hyperband的多预算调度要求
search_space$params$nrounds$lower = 1
search_space$params$nrounds$upper = 128

# 执行Hyperband超参数调优
instance = tune(
  method = "hyperband",
  task = tsk("pima"),
  learner = lrn("classif.xgboost", eval_metric = "logloss"),
  resampling = rsmp("cv", folds = 3),
  measures = msr("classif.ce"),
  search_space = search_space,
  term_evals = 100
)

# 输出最优超参数配置
instance$result

避坑提示

  • 你贴的手动定义搜索空间的示例里存在笔误:正确标签名是budget,不是bugdget,拼写错误会导致Hyperband无法识别预算参数直接报错。
  • 这套操作逻辑适配所有符合mlr3规范的学习器:如果使用LightGBM、Torch深度学习模型等其他学习器,只要找到对应控制训练迭代轮次的参数(比如LightGBM的num_iterations、Torch模型的epochs),追加budget标签即可适配Hyperband流程。
  • 不需要手动重写搜索空间里的其他参数,lts()提供的默认搜索空间已经覆盖了xgboost常用调优超参数,直接修改标签和范围即可复用官方预设的参数范围经验值。

内容的提问来源于stack exchange,提问作者user2165907

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 22:15:49