超参数调优
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/hyperparameter-tuning-skillhub,为 AI 助手添加超参数调优能力。
技能介绍
要解决的问题
训练模型时,超参数往往决定了性能上限。手动调参不仅耗时,而且难以系统探索参数空间——参数维度增加后,随机尝试或网格搜索的效率急剧下降。你需要一种方法来:
- 自动探索大规模参数组合
- 在有限计算预算内找到较优配置
- 避免把资源浪费在明显劣质的参数组合上
核心能力与工作流
这个技能将调优过程拆为五个步骤:
1. 定义搜索空间
- 为每个超参数指定类型:
categorical、integer或float - 学习率这类跨数量级的参数使用对数均匀分布
- 支持条件搜索空间,剔除无效组合
2. 选择搜索策略
Grid search:穷举,仅适合小空间Random search:强基线,可扩展性好Bayesian optimization(TPE 或 GP):样本效率高,适合昂贵评估Hyperband/ASHA:早停加随机搜索,适合深度学习场景
3. 配置评估
- 中小数据集用 k 折交叉验证(通常 5 折)
- 大数据集或昂贵模型用留出验证集
- 明确目标指标(验证 F1、AUC-ROC、RMSE)
4. 并行执行与剪枝
- 并行启动试验
- 基于中间结果提前终止劣质试验,把算力留给有前景的配置
5. 分析与选择
- 检查优化历史,做参数重要性分析
- 用等高线图或平行坐标图可视化参数交互
- 选出最优配置,在全量训练集上重训最终模型
适用边界与注意点
- 高维搜索:维度超过 10 时贝叶斯优化退化,先随机搜索或 Hyperband 粗筛,再对前 3–5 个重要参数做贝叶斯优化
- 噪声目标:CV 分数方差大时,增加折数、用重复 k 折,或对多种子取平均
- 相关超参数:学习率与 batch size 等存在强交互,用 Optuna 等高线图或 fANOVA 重要性检测
- 昂贵评估:单次超过 1 小时时用多保真度方法,小预算先训,表现好的配置才完整训练
- 类别爆炸:多个类别型参数组合爆炸时,用条件搜索空间收缩有效空间
支持的技术栈包括 Optuna、Ray Tune、scikit-learn、Hyperopt、Keras Tuner,剪枝算法涵盖 Median pruning、Hyperband、ASHA,贝叶斯方法包括 TPE、GP、CMA-ES,可视化支持 Optuna、TensorBoard HParams 与 Weights & Biases Sweeps,分布式执行可通过 Ray Tune 集群或 Optuna 配合 MySQL/PostgreSQL 实现。
使用场景
- 训练深度学习模型时学习率和正则化强度需要跨数量级搜索,要在有限 GPU 时间内找到最优组合
- 模型包含多个相关超参数需要同时调优,需要识别参数交互并定义条件搜索空间
- 单次模型评估耗时超过一小时,需要使用多保真度方法筛选有前景的配置
- 需要在多种搜索策略中选择最适合当前计算预算的调优方法并对比效果
适合人员
- 机器学习工程师需要在有限 GPU 预算内为深度学习模型找到最优超参数组合
- 数据科学家在训练分类器时需要系统化探索参数空间并对比不同搜索策略的效果
- 研究工程师在论文实验阶段需要复现并对比多种超参数优化方法的性能
- 机器学习平台开发者需要为用户构建自动化调优工具并集成剪枝和分布式执行能力