网格搜索方法值得神经网络吗?

时间:2017-09-08 07:57:43

标签: machine-learning scikit-learn neural-network grid-search

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

但是,我想知道这是不是计算成本太高了?而且,我应该如何定义层数和神经元的“网格”?这已经过测试了吗?感谢

1 个答案:

答案 0 :(得分:1)

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

在我看来,由于curse of dimensionality,网格搜索不是神经网络的最佳选择。人们通常会考虑简单random search,特别是在开发的早期阶段。它的工作原理是因为通常一些超参数不会对损失函数产生很大影响,因此无穷无尽地搜索所有可能的组合是没有意义的。

所以,我会建议以下循环:

  1. 确定合理的超参数值集(下限/上限,步骤)
  2. 开始针对不同组合的随机抽样
  3. 一段时间后,您将能够(希望)缩小搜索空间
  4. 重复新界限
  5. 在某些特殊情况下,您可以使用基于渐变和贝叶斯优化,但这些选项非常特定于问题。