资讯

隐藏层是什么?神经网络中介于输入和输出之间的那些层

2026-11-053 分钟阅读百科
TL;DR隐藏层(Hidden Layer)是神经网络中位于输入层与输出层之间、外部不能直接观察的层,每层由带非线性激活函数的神经元组成,负责把输入逐步变换为越来越抽象的特征表示;隐藏层的数量决定网络深度、神经元数量决定宽度,二者是需要权衡的超参数。

隐藏层(Hidden Layer)是神经网络中位于输入层和输出层之间的那些层。之所以叫“隐藏”,是因为我们只能直接看到网络的输入和输出,而中间这些层的值并不直接对应着任何给定的数据,训练数据也不会告诉它们应该输出什么,它们需要网络在训练中自己去学习。

隐藏层的作用

隐藏层是神经网络强大能力的来源。它的作用是把原始的输入一步一步地变换成更有用的表示,也就是特征。以图像识别为例:输入层接收的是一张图片的原始像素;第一个隐藏层可能学会识别简单的边缘和颜色变化;第二个隐藏层把这些边缘组合起来,识别出角、纹理和简单的形状;更深的隐藏层识别出眼睛、轮子这样的部件;最后的隐藏层识别出完整的物体;输出层再根据这些高级的特征给出分类的结果。每一层都在前一层的基础上构建更抽象、更有意义的表示。研究者通过可视化卷积神经网络的各层,确实观察到了这种从简单到复杂的层次结构。

为什么需要非线性

每个隐藏层的神经元,都会把上一层的输出加权求和,再经过一个非线性的激活函数,比如 ReLU、Sigmoid 或 GELU。非线性至关重要:如果没有激活函数,多个线性变换叠加起来仍然是一个线性变换,无论有多少个隐藏层,网络的能力都等同于没有隐藏层,只能处理线性的问题。正是有了非线性的激活函数,隐藏层才能把原本线性不可分的问题,变换到一个新的空间中,让它变得容易处理。经典的例子是“异或”问题:单层感知机无法解决它,而只要加入一个有两个神经元的隐藏层,就可以轻松地解决。

深度和宽度

隐藏层的数量决定了网络的深度,每个隐藏层中神经元的数量决定了网络的宽度。万能逼近定理指出,只要有足够多的神经元,即使只有一个隐藏层的网络,也能以任意精度逼近任何连续函数。但这需要的神经元数量可能大得惊人。研究和实践都表明,增加深度通常比单纯地增加宽度更加高效:深层网络可以通过层层组合,用少得多的参数表示复杂的函数,这也是“深度学习”这个名字的由来。不过网络越深越难训练,容易出现梯度消失或梯度爆炸,需要借助 ReLU 激活函数、残差连接、归一化等技术。

如何确定隐藏层的结构

隐藏层的数量和每层神经元的数量都是需要人来设定的超参数,没有通用的公式。层数太少、神经元太少,网络的表达能力不够,会欠拟合;太多则计算量大、容易过拟合。实践中通常参考同类任务中已被验证有效的网络结构,再通过验证集上的表现进行调整,也可以使用神经架构搜索自动地寻找。在今天的大语言模型中,隐藏层的数量可达几十到上百层,每层的“隐藏维度”可达几千甚至上万,模型内部的这些隐藏表示,也成为了可解释性研究的重要对象:研究者通过分析不同层的隐藏状态,探究模型在什么位置、以什么方式表示了语法、事实和推理等信息。