超参数调优方法

超参数调优方法

    • 网格搜索
    • 随机搜索
    • 贝叶斯优化

超参数搜索算法一般包括以下要素:

  1. 目标函数,即算法需要最大化、最小化的目标;
  2. 搜索范围,一般通过上限和下限来确定;
  3. 算法的其他参数

网格搜索

最简单,应用最广泛的超参数搜索算法
通过查找搜索范围内的所有的点来确定最优值
如果采用较大的搜索范围以及较小的步长,网格搜索有很大概率找到全局最优值
这种搜索方案十分消耗计算资源和时间,特别是需要调优的超参数比较多的时候
实际应用中,网格搜索法一般会先使用较广的搜索范围和较大的步长,来寻找全局最优值可能的位置,然后逐渐缩小搜索范围和步长,来寻找更精确的最优值

随机搜索

随机搜索的思想与网格搜索比较相似,只是不再测试上界和下界之间的所有值,而是在搜索范围中随机选取样本点
其理论依据是,如果样本点集足够大,通过随机采样也能大概率地找到全局最优值,或者近似值
随机搜索一般会比网格搜索要快一些,但是和网格搜索的快速版一样,结果也是没法保证的

贝叶斯优化

贝叶斯优化算法在寻找最优最值参数时,采用了网格搜索、随机搜索完全不同的方法
网格搜索和随机搜索在测试一个新点时,会忽略前一个点的信息
贝叶斯优化算法则充分利用了之前的信息
贝叶斯优化算法通过对目标函数形状进行学习,找到使目标函数向全局最优值提升的参数
学习目标函数形状的方法是,首先根据先验分布,假设一个搜索函数,然后,每一次使用新的采样点来测试目标函数时,利用这个信息来更新目标函数的先验分布;最后,算法测试由后验分布给出的全局最值最可能出现的位置的点
贝叶斯优化算法,一旦找到一个局部最优值,会在该区域不断采样,所以很容易陷入局部最优值
为了弥补这个缺陷,贝叶斯优化算法会在探索和利用之间找到一个平衡点,“探索”就是在还未取样的区域获取采样点;而“利用”则是根据后验分布在最可能出现全局最值的区域进行采样

你可能感兴趣的:(机器学习)