有没有设计神经网络的经验法则?

数据挖掘 神经网络
2021-09-14 02:25:40

我知道神经网络架构主要基于问题本身和输入/输出的类型,但仍然 - 在开始构建时总是有一个“正方形”。所以我的问题是——给定一个MxN的输入数据集(M 是记录数,N 是特征数)和一个 C 可能的输出类——对于我们应该从多少层/单元开始有一个拇指规则吗?

3个回答

这个问题已经在 CrossValidated 上详细回答了:How to choose the number of hidden layers and nodes in a feedforward neural network?

但是,让我添加我自己的两分钱:

选择最佳神经网络架构没有什么神奇的规则,但如果你能找到有人用来解决类似问题的架构,这通常是一个很好的起点。

最好的地方是使用流行的神经网络库(如 Keras、PyTorch 或 Tensorflow)以及学术文献中描述的架构的官方或非官方示例。github 上的keras/examples是一个很好的资源。

这些架构可能是经过大量试验和错误后选择的,因此大部分工作都会为您完成。

我读了一篇论文,探讨了使用神经网络设计其他神经网络的想法,通过探索哪种节点和层的配置是最有效的。
是您可以下载 PDF 的页面。

在@Imran 的回答之后,我在他链接到的 CrossValidated 帖子的评论之一中找到了这篇论文。除了尝试使用遗传模型(而不是使用经验法则)找到正确的架构之外,第 2.1 节还给出了一些理论界限,即在一个/两个隐藏层系统中应该有多少隐藏单元。

编辑: 我测试了这个定理,发现使用遗传模型与选择随机架构一样好。