是神经网络的网格搜索方法



我已经尝试成功地应用GridSearch方法来找到SVM的最佳参数,现在我想将其应用于神经网络(MLPClassifier)以找到最佳体系结构(即层和神经元/层),最好的激活函数,...

但是,我想知道这是否不会太计算昂贵?此外,我应该如何为层和神经元的数量定义"网格"?这已经进行了测试吗?谢谢

是的,许多层和神经元被认为是超级参数的一部分。

我认为,由于维度的诅咒,网格搜索不是神经网络的最佳选择。人们通常考虑简单的随机搜索,尤其是在开发的早期阶段。它之所以起作用,是因为经常有些超级参数不会严重影响损失功能,因此详尽的搜索没有任何可能的组合。

所以,我建议以下循环:

  1. 确定合理的超参数值集(下/上限,步骤)
  2. 启动不同组合的随机抽样
  3. 一段时间后,您将能够(希望)缩小搜索空间
  4. 重复新界限

在某些特殊情况下,您可以使用基于梯度和贝叶斯优化的优化,但是这些选项非常有问题。

最新更新