机器学习算法需要用户定义的输入来实现准确性和通用性之间的平衡。这个过程称为超参数调整。有多种工具和方法可用于调整超参数。我们编制了一份用于调整机器学习模型超参数的前八种方法的列表。1.贝叶斯优化贝叶斯优化已经成为调整机器学习算法超参数的有效工具,更具体地说,是针对深度神经网络等复杂模型。它提供了一个有效的框架来优化昂贵的黑盒功能,而无需了解其形式。它已应用于多个领域,包括学习最优机器人力学、顺序实验设计和合成基因设计。2.遗传算法遗传算法(EA)是一种优化算法,它根据称为运算符的特定规则修改一组候选解(种群)。EA的主要优势之一是它们的通用性:这意味着EA可以在广泛的条件下使用,因为它们简单且独立于潜在问题。在超参数调整问题中,遗传算法已被证明比基于精度/速度的网格搜索技术表现更好。3.Gradient-basedoptimizationGradient-basedoptimization是一种基于机器学习模型选择标准对超参数的梯度计算来优化多个超参数的方法。当满足训练标准的某些可微性和连续性条件时,可以应用这种超参数调整方法。4.网格搜索网格搜索是超参数调整的基本方法。它对用户指定的一组超参数执行详尽搜索。这种方法是最直接的,可导致最准确的预测。使用这种调整方法,用户可以找到最佳组合。网格搜索适用于多个超参数,但搜索空间有限。5.KerasTunerKerasTuner是一个允许用户为机器学习或深度学习模型找到最佳超参数的库。该库有助于找到内核大小、优化学习率和不同的超参数。KerasTuner可用于获取各种深度学习模型的最佳参数,以达到最高精度。6.基于种群的优化基于种群的方法本质上是一系列基于随机搜索的方法(如遗传算法)。使用最广泛的基于种群的方法之一是DeepMind提出的基于种群的训练(Population-BasedTraining,PBT)。PBT在两个方面是一种独特的方法:它允许在训练期间使用自适应超参数;它结合了并行搜索和顺序优化7.ParamILSParamILS(IterativeLocalSearchinParameterConfigurationSpace)是一种用于算法配置的通用随机局部搜索方法。ParamILS是一种自动算法配置方法,有助于开发高性能算法及其应用。ParamILS使用默认和随机设置进行初始化,并采用迭代首次改进作为辅助局部搜索过程。它还会扰动固定数量的随机移动,并始终接受更好或同样好的参数配置,但会随机重新初始化搜索。8.RandomSearch随机搜索可以说是对网格搜索的根本性改进。该方法是指随机搜索可能参数值的某种分布的超参数。搜索过程一直持续到达到所需的准确度为止。随机搜索类似于网格搜索,但已被证明比后者产生更好的结果。这种方法经常被用作HPO的基准来衡量新设计算法的效率。虽然随机搜索比网格搜索更有效,但它仍然是一种计算密集型方法。
