超参调优往往根据所谓的“经验值”,而超参往往对模型效果至关重要。调优的过程可视为“黑盒优化”,我们需要寻找一些方法来获取最优的超参数。
需要考虑的要素
- 目标函数,即算法需要最大化/最小化的目标。
- 搜索范围,一般通过上限和下限确定。
- 其他参数,如步长。
网格搜索:通过搜索范围内所有的点来确定最优值,十分小号计算资源和时间。在实际应用中,一般用较广的搜索范围和较大的补偿寻找可能最优的位置,继而缩小范围和步长寻找更精确的最优值。不过由于目标函数一般是非凸的,所以很有可能错过全局最优值。
随机搜索:随机选择样本点,因为如果样本点集足够大,那么通过随机采样也能大概率找到全局最优值或者其近似值。它的速度要好过网格搜索,但和快速版网格搜索一样无法保证其结果。
贝叶斯优化算法:现根据先验分布,假设一个搜索数据集;然后每次使用新的采样点测试目标函数时,利用其信息更新目标函数的先验分布;最后,算法测试由后验分布给出全局最优值可能出现的位置点。其缺点是,一旦找到一个局部最优值,贝叶斯优化算法会在该区域不断采样,陷入局部最优值。所以贝叶斯优化算法需要在“探索”和“利用”之间找到一个平衡点。