全连接神经网络(MLP / DNN)详解
全连接神经网络(Multi-Layer Perceptron, MLP)是一种典型的前馈神经网络,属于深度学习的基础结构。MLP指至少有一层隐藏层的感知机网络DNN(Deep Neural Network)是 MLP 的扩展版本,层数更多核心特点:神经元之间层与层全连接通过非线性激活函数提升表达能力使用反向传播(Backpropagation)训练✅ 优点:表达能力强,能拟合复杂非线性关系通用性强
1️⃣ 什么是全连接神经网络(MLP / DNN)
全连接神经网络(Multi-Layer Perceptron, MLP) 是一种典型的前馈神经网络,属于深度学习的基础结构。
-
MLP 指至少有一层隐藏层的感知机网络
-
DNN(Deep Neural Network)是 MLP 的扩展版本,层数更多
核心特点:
-
神经元之间 层与层全连接
-
通过 非线性激活函数 提升表达能力
-
使用 反向传播(Backpropagation) 训练
2️⃣ 网络结构与基本原理
一个 MLP 主要由以下部分构成:
-
输入层:接受原始数据特征
-
隐藏层:非线性变换,提取特征
-
输出层:输出预测结果
-
权重(W)与偏置(b):网络参数
-
激活函数(Activation Function):增加非线性能力
Input Layer → Hidden Layer 1 → Hidden Layer 2 → Output Layer
3️⃣ 数学公式与计算过程
假设输入特征为 ,第一隐藏层计算公式为:
经过激活函数:
第层的计算公式:
最终输出层(假设分类任务,Softmax 输出):
4️⃣ 常用激活函数
范围 (0,1),适合二分类输出
高效,解决梯度消失问题
-
Sigmoid
-
ReLU
-
Tanh
范围 (-1,1),零中心化
5️⃣ 损失函数
分类任务常用 交叉熵损失:
优化方法:SGD、Adam、RMSProp 等
回归任务常用 均方误差(MSE):
6️⃣ 前向传播与反向传播(BP 算法)
-
前向传播:从输入到输出,逐层计算
-
反向传播(Backpropagation):利用链式法则计算梯度,更新参数权重更新公式(梯度下降):
:学习率
7️⃣ Python 实现(PyTorch)
import torch
import torch.nn as nn
import torch.optim as optim
# 定义 MLP 模型
class MLP(nn.Module):
def __init__(self, input_size, hidden_size, output_size):
super(MLP, self).__init__()
self.fc1 = nn.Linear(input_size, hidden_size)
self.relu = nn.ReLU()
self.fc2 = nn.Linear(hidden_size, output_size)
self.softmax = nn.Softmax(dim=1)
def forward(self, x):
x = self.relu(self.fc1(x))
x = self.softmax(self.fc2(x))
return x
# 模型初始化
model = MLP(input_size=4, hidden_size=16, output_size=3)
criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(model.parameters(), lr=0.01)
# 假设输入
X = torch.randn(8, 4)
y = torch.randint(0, 3, (8,))
# 前向传播
outputs = model(X)
loss = criterion(outputs, y)
# 反向传播
optimizer.zero_grad()
loss.backward()
optimizer.step()
print("Loss:", loss.item())
8️⃣ 优缺点总结
✅ 优点:
-
表达能力强,能拟合复杂非线性关系
-
通用性强,适用于分类和回归
-
结合深度学习框架可快速实现
❌ 缺点:
-
计算量大,对硬件要求高
-
容易过拟合,需要正则化(Dropout、L2 等)
-
不具备可解释性
9️⃣ 应用场景
-
结构化数据预测(如金融、医疗数据)
-
图像分类(基础结构,结合 CNN 使用)
-
自然语言处理(结合嵌入层)
-
时间序列预测(结合 RNN/Transformer)
📚 总结
全连接神经网络是深度学习的基础模块,通过层与层之间的全连接和非线性变换,可以学习复杂的映射关系。虽然计算开销大,但配合现代优化算法和正则化手段,可以在多种任务中取得优秀表现。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)