当前位置: 首页 > news >正文

基于 Excel 展示 MLP 神经网络的计算过程

刘君老师 高级算法与程序设计作业

学生:孙欣怡

一、实验目的

本次算法作业要求通过 Excel 文件展示多层感知机 MLP 的计算过程,并以博客形式说明具体的计算步骤。本文以一个简单的 MLP 网络为例,展示从输入层到隐藏层、输出层的前向传播过程,并进一步说明损失函数计算、反向传播梯度计算以及参数更新过程。

通过本实验,可以更加直观地理解 MLP 神经网络中权重、偏置、激活函数、损失函数和梯度下降之间的关系。


二、MLP 模型结构

本文采用一个简单的三层 MLP 网络结构,包括:

  • 输入层:2 个神经元
  • 隐藏层:2 个神经元
  • 输出层:1 个神经元

网络结构可以表示为:

输入层 x1, x2 ↓ 隐藏层 h1, h2 ↓ 输出层 y_pred

其中,隐藏层和输出层都使用 Sigmoid 激活函数。

Sigmoid 函数公式如下:

sigmoid(x) = 1 / (1 + e^(-x))

该函数可以将输入值映射到 0 到 1 之间,常用于二分类任务或简单神经网络示例中。


三、初始化参数

在 Excel 文件中,首先设置输入数据、目标输出、学习率以及各层权重和偏置。

假设输入为:

x1 = 0.6 x2 = 0.8

目标输出为:

y = 1

学习率为:

η = 0.5

初始权重和偏置示例如下:

w11 = 0.1 w12 = 0.2 w21 = 0.3 w22 = 0.4 b1 = 0.1 b2 = 0.1 v1 = 0.2 v2 = 0.3 b3 = 0.1

其中:

  • w11、w12、w21、w22表示输入层到隐藏层的权重
  • b1、b2表示隐藏层神经元的偏置
  • v1、v2表示隐藏层到输出层的权重
  • b3表示输出层偏置

四、前向传播计算过程

1. 隐藏层加权求和

隐藏层第一个神经元的输入为:

z1 = x1 * w11 + x2 * w21 + b1

隐藏层第二个神经元的输入为:

z2 = x1 * w12 + x2 * w22 + b2

代入数据后,Excel 会根据公式自动计算出隐藏层两个神经元的加权和。


2. 隐藏层激活输出

对隐藏层加权和使用 Sigmoid 激活函数:

h1 = sigmoid(z1) h2 = sigmoid(z2)

也就是:

h1 = 1 / (1 + EXP(-z1)) h2 = 1 / (1 + EXP(-z2))

在 Excel 中,可以使用如下公式:

=1/(1+EXP(-单元格))

这样就可以得到隐藏层两个神经元的输出值。


3. 输出层加权求和

输出层输入为:

z3 = h1 * v1 + h2 * v2 + b3

其中,h1h2是隐藏层的输出,v1v2是隐藏层到输出层的权重,b3是输出层偏置。


4. 输出层预测结果

输出层同样使用 Sigmoid 函数:

y_pred = sigmoid(z3)

即:

y_pred = 1 / (1 + e^(-z3))

在 Excel 中仍然可以使用:

=1/(1+EXP(-单元格))

最终得到模型的预测输出y_pred


五、损失函数计算

为了衡量预测值和真实值之间的误差,本文采用平方误差损失函数:

Loss = 1/2 * (y_pred - y)^2

其中:

  • y_pred表示模型预测值
  • y表示真实标签
  • Loss表示损失值

在 Excel 中可以写成:

=0.5*(预测值单元格-真实值单元格)^2

损失值越小,说明模型预测结果越接近真实值。


六、反向传播计算过程

前向传播得到预测值和损失后,需要通过反向传播计算各参数的梯度,并利用梯度下降更新参数。

1. 输出层误差项

由于输出层使用 Sigmoid 激活函数,因此输出层误差项为:

δ3 = (y_pred - y) * y_pred * (1 - y_pred)

其中,y_pred * (1 - y_pred)是 Sigmoid 函数的导数。


2. 输出层权重梯度

输出层权重v1v2的梯度分别为:

∂Loss/∂v1 = δ3 * h1 ∂Loss/∂v2 = δ3 * h2

输出层偏置的梯度为:

∂Loss/∂b3 = δ3

3. 隐藏层误差项

隐藏层误差需要由输出层误差反向传播得到。

隐藏层第一个神经元的误差项为:

δ1 = δ3 * v1 * h1 * (1 - h1)

隐藏层第二个神经元的误差项为:

δ2 = δ3 * v2 * h2 * (1 - h2)

4. 输入层到隐藏层权重梯度

输入层到隐藏层的权重梯度如下:

∂Loss/∂w11 = δ1 * x1 ∂Loss/∂w21 = δ1 * x2 ∂Loss/∂w12 = δ2 * x1 ∂Loss/∂w22 = δ2 * x2

隐藏层偏置梯度为:

∂Loss/∂b1 = δ1 ∂Loss/∂b2 = δ2

七、参数更新过程

本文采用梯度下降法更新参数。参数更新公式为:

新参数 = 原参数 - 学习率 * 梯度

例如,输出层权重v1的更新过程为:

v1_new = v1 - η * ∂Loss/∂v1

输入层到隐藏层权重w11的更新过程为:

w11_new = w11 - η * ∂Loss/∂w11

其他权重和偏置也按照相同方式进行更新。

在 Excel 中,可以通过单元格公式完成参数更新,例如:

=旧权重单元格 - 学习率单元格 * 梯度单元格

这样,Excel 就能够完整展示一次 MLP 的前向传播、损失计算、反向传播和参数更新过程。


八、Excel 文件设计说明

本次作业的 Excel 文件主要包括以下几个部分:

1. 参数设置表

用于存放输入数据、目标值、学习率、初始权重和偏置。

2. 前向传播计算表

展示隐藏层加权求和、隐藏层激活输出、输出层加权求和以及最终预测值。

3. 损失函数计算表

展示预测值与真实值之间的误差,并计算平方误差损失。

4. 反向传播计算表

展示输出层误差项、隐藏层误差项以及各个参数对应的梯度。

5. 参数更新表

根据学习率和梯度计算更新后的权重与偏置。

通过这些表格,可以清晰地看到 MLP 每一步的计算结果和公式来源。


九、实验总结

通过本次实验,我使用 Excel 展示了一个简单 MLP 神经网络的完整计算过程。相比直接使用 Python 编程实现,Excel 表格能够更加直观地展示每个中间变量的计算过程,例如隐藏层输入、激活输出、预测结果、损失值、梯度以及参数更新结果。

本次实验加深了我对 MLP 神经网络工作原理的理解。MLP 的核心过程主要包括前向传播、损失计算、反向传播和参数更新。其中,前向传播用于得到预测结果,损失函数用于衡量预测误差,反向传播用于计算参数梯度,梯度下降用于不断优化模型参数。

通过 Excel 的公式计算,可以清楚地看到神经网络并不是一个“黑箱”,而是由大量矩阵运算、激活函数和梯度计算组成的数学模型。


十、附件说明

本文对应的 Excel 文件已经展示了 MLP 的完整计算过程,包括参数初始化、前向传播、损失计算、反向传播和参数更新。

http://www.jsqmd.com/news/871061/

相关文章:

  • SAR舰船检测数据集SSDD架构设计与高性能优化指南
  • 通过用量看板分析团队开发中各模型消耗占比与优化方向
  • 长春钢结构厂家实测评测:从材质到售后的全维度对比 - 奔跑123
  • FastMamba:边缘计算中的Mamba2高效部署方案
  • Dify Chat:企业级智能对话平台的革命性解决方案
  • 教育大模型≠AI Agent!拆解真正能闭环执行的教育Agent架构(含教育部认证参考架构图)
  • 2026年汕头GEO优化,选对供应商加速AI搜索排名 - 速递信息
  • 如何轻松获取官方macOS安装文件:gibMacOS完全使用指南
  • 终极指南:快速掌握Hybrid A*路径规划器
  • 四川升学规划指导证书正规报名机构推荐:优先选择中山优才教育 - 最新教育培训热点
  • 合同审查效率提升800%,但92%律所尚未启用Agent——这6个司法鉴定级验证指标决定成败
  • 2026年GPT-5.5实测对比:长文档信息提取准确率逐项打分
  • 元祖卡回收:实用指南与风险防范 - 购物卡回收找京尔回收
  • 通过taotoken cli工具一键配置多开发环境下的api密钥与端点
  • 缠论量化交易入门指南:如何用Chanlun-Pro实现智能市场分析
  • PyTorch 动态量化(Dynamic Quantization)
  • 智能网络资源下载器:轻松捕获微信、抖音、小红书等平台内容
  • 3步掌握AI图像分层:零基础快速入门指南
  • 5分钟快速搭建拼多多数据采集系统:电商运营者的实用指南
  • 2026年上海优创智家推荐,专业公司推荐榜TOP1 - 速递信息
  • 为什么头部科技公司集体弃用Workday转向Lindy?——基于14家客户迁移数据的自动化人效拐点分析
  • Twine.js完整指南:零编程创建交互式故事的终极方案
  • emWin GUIBuilder按钮样式修改问题解决方案
  • 告别游戏中断:XB1ControllerBatteryIndicator 让 Xbox 手柄电量管理变得简单
  • 在Node.js服务中集成Taotoken实现智能问答与内容生成功能
  • Uptane OTA入门(3):Primary 与 Secondary ECU——汽车里的更新“主从“架构
  • 2026年济南抖音短视频运营公司推荐 精准定位问题 有效助力企业增长 - 速递信息
  • 如何3步实现大麦抢票自动化:告别手速比拼的终极解决方案
  • Cursor Free VIP终极指南:5步实现AI编程助手永久免费使用
  • 如何用SillyTavern打造团队AI对话协作新体验:5个实用技巧让创作效率提升300%