写点什么

实用机器学习笔记二十五:超参数优化

作者:打工人!
  • 2022 年 3 月 11 日
  • 本文字数:1264 字

    阅读完需:约 4 分钟

实用机器学习笔记二十五:超参数优化

前言:

本文是个人在 B 站自学李沐老师的实用机器学习课程【斯坦福 2021 秋季中文同步】的学习笔记,感觉沐神讲解的非常棒 yyds。

搜索空间:


超参数优化首先要确定在什么样的搜索空间里进行优化,下面以具体的目标检测的例子来说:


  • 明确每一个超参数的搜索空间:


超参数优化
  • 需要先选择一个预训练模型 model(backbone)

  • 学习率的优化,从上图中可以看出,先对其取对数,参数就可以在 1-6 之间取,然后再从对数变回来。

  • 根据经验需要好好设计超参数的搜索空间来提升效率

HPO 算法:

Black-box:


  • 把每一次的训练当做一个黑盒,训练完成后,之需要把模型或者性能指标反馈给我们。

  • 可以适用于任何机器学习算法

网格搜索:


  • 实际上是一个穷举算法。把所有的组合都过一遍,最终返回最终结果

  • 搜索空间随着超参数的数量呈指数级增加


  • 代码示例:

for config in search_space:  train_and_eval(config)return best_result
复制代码

随机搜索:


  • 随机搜索即是随机在搜索空间里选择一组超参数来训练

  • 由于是随机的选择,因此在一段时间之后,如果性能变化不大,可以提前结束优化过程

  • 代码示例:

for _ in range(n):  config = random_select(search_sapce)  train_and_eval(config)return best_config
复制代码

贝叶斯优化(BO):


  • 迭代地学习一个超参数到目标函数的映射关系。在选择下一次超参数的时候是基于当前的评估。


  • Surrogate model:

  • 拟合超参数到目标值的模型

  • 通常是一个回归模型:随机森林,高斯过程等等都可以


下图中,黑色虚线表示目标函数,黑色实线表示 BO 优化的值,紫色区域表示预测的值,上下范围是置信区间。两个黑色的点表示已经采样过的点。绿色的线就表示获取函数。


  • 获取函数:目的就是选择下一步要去采样的超参数

  • 对每一个超参数都要去拟合一个值,值越大,表示越不置信。一个超参数如果可以使目标函数更好,和真实的值很接近了,就代表很置信了,就不用去拟合了。

  • 选择不置信,同时可以使目标函数更好的超参数。

  • 在探索和利用之间权衡。探索就是去未知的地方探索一下,利用就是知道这一块还不错,就多在这地方看看,多用用。


BO
  • BO 的限制:

  • 初始阶段,和随机搜索差距不大。

  • 优化过程是序列的,需要前面的结果,无法并行。

Multi-fidelity:


  • 不需要每次都把完整的数据集都进行训练。关心的只是哪一个超参数比另外一个超参数更好,只需要知道超参数的排序即可,所以可以使用近似值来代替:

  • 对数据集进行采样,即使用子数据集

  • 减小模型的大小。比如:使用 resnet18 做模拟

  • 在训练的时候提前终止,根据曲线等数据指标趋势,就可以判断最后训练效果好不好,所以提前终止不好的训练,降低成本。

Successive Halving:


  • 这个算法就是只保留最有潜力的超参数。

  • 随机选择 n 组超参数训练 m 轮

  • 重复这个过程,直到只剩下一组超参数

  • 保留最好的 n/2 组超参数,并训练 2m 轮

  • 保留最好的 n/4 组超参数,并训练 4m 轮

  • ... ...

  • 总计算开销变化不大:训练任务少了,但是训练轮数加倍了

Hyperband(常用):


  • 在 Successive Halving 中:

  • n : exploration(探索)

  • m: exploitation(利用)

  • Successive Halving 需要在 n 和 m 大小之间权衡

  • Hyperband 是跑了多个 Successive Halving

  • 一开始选择 n 大一点,m 小一点

  • 后面慢慢把 n 变小,m 变大

发布于: 刚刚阅读数: 3
用户头像

打工人!

关注

未来自动驾驶领域扫地僧 2019.11.10 加入

2021年InfoQ年度最佳内容获得者。 InfoQ签约作者 自动化和控制专业入坑人士,目前在研究深度强化学习(DRL)技术。学了Java,本来要入坑互联网,现在要入坑车联网了。喜欢了解科技前沿技术,喜欢手机摄影。

评论

发布
暂无评论
实用机器学习笔记二十五:超参数优化_学习笔记_打工人!_InfoQ写作平台