在机器学习的工程化实际应用中,超参优化是个非常重要的过程。设置不当的超参会影响最终的效果。
一般来讲,人工可以对超参数进行一定的经验值设置。但是参数很多时候是互相关联的。比如你用来分布式训练的节点数,和初始Learning Rate,和Batch Size一定程度决定了单位数据量上的实际学习率。
所以,需要一定的相对自动化(程序化)的手段来调参。
1、程序化手段:(程序化:训练,评估,优化)
需要先提供一些人工设置的超参,以及其大致搜索范围。
提供评估目标(函数),以让程序评估效果好坏。
2、常用算法:
Bayesian Opt,使用贝叶斯优化法来搜索可能的超参空间。Bayesian Optimization
Grid Search,在空间内进行网格搜索
Random Search,在空间内进行随机搜索
网友评论