在神经网络中,隐藏层中神经元的数量对应于生成的模型的复杂性,以将输入映射到输出。与具有较少节点的隐藏层相比,更多的神经元会创建更复杂的功能(因此能够对更细微的决策障碍进行建模)。
但是隐藏层呢?就生成的模型而言,更多的隐藏层对应于什么?
在神经网络中,隐藏层中神经元的数量对应于生成的模型的复杂性,以将输入映射到输出。与具有较少节点的隐藏层相比,更多的神经元会创建更复杂的功能(因此能够对更细微的决策障碍进行建模)。
但是隐藏层呢?就生成的模型而言,更多的隐藏层对应于什么?
编辑
事实上,这是您提出的一个非常有趣的问题。它值得更多解释。
1. 全连接网络
添加的层越多,网络变得越“非线性”。例如,在需要“高度非线性分离”的两个螺旋问题的情况下,解决该问题的第一个已知架构在当时是相当先进的:它有 3 个隐藏层,并且它还有跳跃连接(很早1988 年的ResNet)。那时,计算的功能还不够强大,动量的训练方法还不为人所知。然而,由于多层架构,问题得到了解决。然而,在这里,我能够训练一个单隐藏层网络来使用 Adam 解决螺旋问题。
2. 卷积网络(CNN)
神经网络的一个有趣的部分案例是 CNN。它们限制了第一层(称为卷积层)的架构,因此由于权重共享,可训练参数的数量要少得多。我们从计算机视觉中学到的东西,朝着 CNN 层的末端移动,它们的感受野变得更大。这意味着后续的 CNN 层比它们的前辈“看到”更多。从概念上讲,第一个 CNN 层可以识别更简单的特征,例如边缘和纹理,而最终的 CNN 层包含有关更抽象对象的信息,例如树木或面孔。
3. 循环网络(RNN)
RNN 是具有层的网络,它们接收一些输出作为输入。从技术上讲,单个循环层相当于无限(或至少大量)普通层。由于这种重复,RNN 保留了内部状态(记忆)。因此,在循环网络的情况下回答您的问题要困难得多。众所周知,由于它们的记忆,RNN 更像程序,因此原则上比其他神经网络更复杂。如果您在最后一种情况下找到问题的答案,请告诉我。
总而言之,更多的隐藏层可能有助于构建神经网络。由于ResNets和随着时间的反向传播等最近的发展,可以训练具有大量隐藏层的神经网络。
更多的隐藏层只会增加神经元的可能性,包括来自先前隐藏层的解决方案。(我会在我在家后编辑这个并为您提供我前段时间找到的一个很好的链接)
同时,也许这会对您有所帮助https://stats.stackexchange.com/questions/63152/what-does-the-hidden-layer-in-a-neural-network-compute
已证明具有包含有限数量神经元的单个隐藏层的前馈网络可以逼近连续函数(参见通用逼近定理)。
更多的层不能改进已经可以做“一切”的东西。但是添加更多层会减少必要神经元的数量,并降低网络所需的计算能力。