了解超参数在机器学习实验中的作用

机器算法验证 机器学习 数据挖掘 超参数 优化
2022-03-20 09:13:58

在机器学习中,每个算法都有一组超参数,需要对其进行优化以获得最佳预测性能。这种优化最简单的方法称为网格搜索,这意味着尝试所有可能的参数值组合。通过这种方式可以找到最佳的参数值。

然而,这并没有提供任何关于参数值相互作用的见解。例如,假设我们有 5 个超参数 p1、p2、p3、p4 和 p5。可能存在这样的事实:当 p1 的值增加时,鉴于 p3 的值较低,预测性能会提高。但是,如果 p3 的值很高,则 p1 的值无效。像这样的有趣的事实可能还有很多。有什么方法可以找到这些事实吗?

2个回答

存在许多用于超参数调整的专用优化方法。基于序列模型的优化(贝叶斯启发方法)是一个特别受欢迎的研究课题,例如这里遗传算法、粒子群优化和模拟退火等元启发式方法也很常见,例如参见此处

如果要对超参数的效果进行建模,随机搜索是一个很好的抽样策略。

您可以在OptunityHyperOptSpearmint等调优库中找到此类优化方法的实现

维基百科上的实验设计可能是补充阅读的好地方。最笼统地说,它涵盖了如何在复杂性如此之大以至于直觉方法不再具有建设性的问题上取得进展。