我正在研究神经网络和正则化。我注意到,根据你要解决的问题类型、处理的数据集等,需要手动设置很多超参数。
我想知道是否有办法创建另一个优化模型,以便自动找到训练所需的最佳超参数?我是说,我们可以通过梯度下降或其他方法找到合适的权重。所以,如果我们能在超参数上找到某种成本函数,我们不也可以做到同样的事情吗?基本上就像一个AI程序在调整我们的AI模型一样。
这种事情是否可能,或者至少是一个有效的问题?也许这已经在某些我不知道的研究中实现了?
回答:
是的,有一些框架可以自动为你调整超参数。我在Optuna团队工作,Optuna(optuna.org)就是这样一个框架,它会使用贝叶斯优化来调整超参数。它可以与任何能够输出损失或准确度的Python程序一起工作。