前馈神经网络如何选择隐藏层的数量

  统计/机器学习 深度学习 人工神经网络    浏览次数:13623        分享
6

我现在想用前馈神经网络做预测,我好奇有没有什么系统的方法来选择神经网络中隐藏层的数量?

此外每个隐藏层的节点数量又该如何选择呢?

 

机器小白   2017-03-11 11:40



   2个回答 
9

一般都是通过cross validation试出来的,没有什么绝对正确的准则。

不过有些是大家(包括Jeff Heaton)普遍的经验心得,值得参考下。

隐藏层数

一般是一层,因为大部分情况下都够用了。理论上说,一个有两个隐藏层的前馈神经网络可以表示任意的非线性决策边界。所以,可以说1到2个隐藏册。

隐藏层中的节点数

假设输入层的节点数是$N_x$,输出层的节点数$N_y$,那么每个隐藏层中的节点数$N_h$一般在$N_x$和$N_y$之间,有人推荐$\sqrt{N_xN_y}$,也有人推荐

$$N_h=\frac{N_s}{c(N_x+N_y)},$$

其中$N_s$是样本的数量,$c$是一个常数,通常选择个位数。当然以上都是根据经验而来的,具体怎么选,还需要针对具体问题进行分析然后做交叉验证。

SofaSofa数据科学社区DS面试题库 DS面经

蓝色北方   2017-03-25 13:53

因吹斯听! - Gavin   2017-10-18 13:18
学习了。请问有文献吗? - okayguy   2018-06-11 14:02
3

对于分类问题,我一般都是用一个隐藏层,隐藏神经元的个数是从Nx一直试到Ny

SofaSofa数据科学社区DS面试题库 DS面经

数据痴汉   2017-03-26 02:56



  相关主题

deep learning中的pooling是什么意思?   6回答

为什么小数据不适合神经网络模型?   3回答

神经网络中的Dropout和Bagging   1回答

训练神经网络中经常提到的epoch是什么意思   2回答

关于神经网络的性能   1回答

深度学习模型的“蒸馏”是什么意思?   0回答

神经网络里为什么隐藏层越多越好?   2回答

吴恩达深度学习第一课第四周作业L层结果收敛在0.64的问题   0回答

epoch和batch之间有什么关系?   2回答

神经网络模型里训练和推理是什么意思?   1回答

深度学习和人工神经网络是一回事吗?   1回答

dropout rate一般设置多大?   3回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!