多层感知器 (MLP) 是一种人工神经网络,由至少三个节点层组成:一个输入层、一个或多个隐藏层和一个输出层。 每层都与下一层完全连接,这意味着一层中的每个节点都与下一层中的每个节点具有加权连接。 与单层感知器等更简单的模型不同,MLP 在隐藏层中使用非线性激活函数(例如,ReLU、sigmoid),使其能够学习数据中的复杂模式。 例如,MLP 可以将图像中的像素值作为输入,通过隐藏层对其进行处理以检测边缘或形状,并输出不同对象类别的概率。 这种架构使 MLP 能够近似任何连续函数,只要有足够的数据和计算资源即可。
训练 MLP 涉及两个关键阶段:前向传播和反向传播。 在前向传播过程中,输入数据通过网络,每一层都应用权重、对输入求和,并应用激活函数来产生输出。 使用损失函数(例如,回归的均方误差,分类的交叉熵)将最终输出与目标进行比较。 然后,反向传播使用链式法则计算损失相对于每个权重的梯度,从输出层开始并向后移动。 随机梯度下降等优化器会调整权重以最小化损失。 例如,在手写数字识别任务(如 MNIST)中,MLP 可能会从随机权重开始,最初错误分类大多数数字,并迭代地细化其参数以减少分类错误。 隐藏层的包含允许网络对简单线性模型无法捕获的输入特征之间的交互进行建模。
MLP 广泛用于回归、分类,甚至强化学习等任务。 然而,它们也有局限性。 对于图像或序列等高维数据,由于参数数量庞大,完全连接的层在计算上变得昂贵。 这导致了专门架构的开发,例如用于图像的卷积神经网络 (CNN) 或用于序列的循环神经网络 (RNN)。 MLP 还要求仔细调整超参数,例如隐藏层的数量、每层的神经元数量和学习率。 尽管存在这些限制,MLP 仍然是深度学习的基础。 开发人员可能会将它们用于表格数据任务或作为更大系统中的组件,例如 CNN 中的最终分类层。 了解 MLP 为掌握更高级的架构及其权衡提供了基础。