多层感知机(MLP)全面解析:从感知机到深度学习入门
·
一、感知机:神经网络的起点
感知机由 Frank Rosenblatt 于1957年提出,是神经网络中最基础的结构。它接收输入信号 x,通过权重 w和偏置 b 进行加权求和,最终通过激活函数(如阶跃函数)输出0或1,实现二分类任务。
感知机的局限性:
只能表示线性可分的问题(如与门、或门)。
无法处理线性不可分问题(如异或门)。
二、多层感知机(MLP):突破线性限制
为了解决感知机的局限性,我们引入多层感知机,即在输入层和输出层之间加入一个或多个隐藏层。
关键组成部分:
隐藏层:引入非线性变换,增强模型表达能力。
激活函数:将线性加权和转换为非线性输出。
三、激活函数:神经网络的“灵魂”
激活函数决定了神经元是否被激活,常见的激活函数有:
| 函数名称 | 公式/特点 | 输出范围 |
|---|---|---|
| 阶跃函数 | 0或1输出 | {0, 1} |
| Sigmoid | (0, 1) | |
| Tanh | ![]() |
(-1, 1) |
| ReLU | [0, +∞) |
四、多层感知机的结构与训练
网络结构:
输入层 → 隐藏层(可多层)→ 输出层
输出层使用 Softmax 函数处理多分类问题
训练过程:
前向传播:输入数据逐层计算,得到预测输出。
反向传播:根据预测与真实值的误差,逐层反向计算梯度。
参数更新:使用梯度下降法更新权重和偏置。
五、超参数与模型评估
超参数包括:
隐藏层数量 每层神经元个数 学习率、批次大小等
误差评估:
训练误差:模型在训练集上的误差。
泛化误差:模型在新数据上的误差。
数据集划分:
训练集:用于训练模型。
验证集:用于调参和模型选择。
测试集:用于最终评估模型性能。
交叉验证(K-Fold):
当数据量不足时,使用K折交叉验证更可靠。
六、过拟合与欠拟合
| 现象 | 原因 | 解决方法 |
|---|---|---|
| 过拟合 | 模型过于复杂,记忆了训练集噪声 | 权重衰减、Dropout、简化模型 |
| 欠拟合 | 模型过于简单,未能捕捉数据规律 | 增加模型复杂度、增加特征 |
七、总结
多层感知机是深度学习中最基础的模型之一,通过引入隐藏层和非线性激活函数,解决了感知机无法处理非线性问题的局限性。理解MLP的结构、训练过程和评估方法,是进一步学习卷积神经网络(CNN)、循环神经网络(RNN)等高级模型的重要基础。
更多推荐



所有评论(0)