用 Excel 手算一个 1-6-1 MLP:前向传播、损失、反向传播与参数更新

计算示例:

本文用一个单输入、6 个隐藏神经元、单输出的多层感知机(MLP)作为例子,展示如何用 Excel 公式完整复现一次训练迭代。配套 Excel 文件中的"MLP计算过程"工作表已经把前向传播、损失计算、反向传播梯度和参数更新全部写成可联动公式。

1. 模型结构与初始参数

本例的网络结构为 1-6-1 :输入层 1 个神经元,隐藏层 6 个神经元,输出层 1 个神经元。输入值为 x=5,目标值为 y=208,学习率为 η=0.01。激活函数使用 Leaky ReLU:

f(t)=IF(t>0,t,0.05t)

j 隐藏层权重 W_j 隐藏层偏置 b_j 输出层权重 v_j
1 10 10 10
2 20 10 20
3 30 10 10
4 20 10 10
5 10 10 30
6 20 10 20

2. 前向传播

隐藏层第 j 个神经元先计算加权和:

z_j = x·W_j + b_j

然后经过激活函数得到隐藏层输出:

h_j = f(z_j)

本例中隐藏层输出为:

h = [60, 110, 160, 110, 60, 110]

输出层加权和为:

s = Σ(v_j·h_j) + c = 9520

由于 s>0,最终输出为 ŷ=f(s)=9520。

3. 损失函数

单样本平方误差为:

L=(ŷ-y)^2=(9520-208)^2=86,713,344

4. 反向传播

先计算输出层梯度:

∂L/∂s = 2(ŷ-y)·f'(s) = 18,624

然后逐层向前传递梯度。例如:

  • ∂L/∂v_j = ∂L/∂s · h_j
  • ∂L/∂c = ∂L/∂s
  • ∂L/∂h_j = ∂L/∂s · v_j
  • ∂L/∂z_j = ∂L/∂h_j · f'(z_j)
  • ∂L/∂W_j = ∂L/∂z_j · x
  • ∂L/∂b_j = ∂L/∂z_j

5. 参数更新

所有参数都使用梯度下降更新:

θ_new = θ - η · ∂L/∂θ

例如第 1 个隐藏层权重的更新为:

W_1_new = 10 - 0.01 × 931200 = -9302

输出层偏置的更新为:

c_new = 20 - 0.01 × 18624 = -166.24

6. Excel 中的核心公式

步骤 Excel 公式 作用
隐藏层加权和 =B18*C18+D18 计算 z_j
激活函数 =IF(E18>0,E18,$B$7*E18) 计算 h_j
输出层加权和 =SUMPRODUCT(H18:H23,F18:F23)+B8 计算 s
损失函数 =(B10-B6)^2 计算平方误差
参数更新 =C18-$B$4*K18 更新隐藏层权重

提示:本例主要用于展示 MLP 的计算链路。学习率较大时,一次更新可能让参数变化非常明显;实际训练中通常需要调整学习率、归一化数据,并进行多轮迭代。

7. 总结

通过这个 Excel 示例,可以清楚看到 MLP 的四个关键步骤:前向传播得到预测值,损失函数衡量预测误差,反向传播计算每个参数的梯度,最后用梯度下降更新参数。Excel 的优势在于每个单元格都可以显示公式,非常适合用来学习神经网络的底层计算过程。

相关推荐
尤鸟倦3 天前
OneNote table复制到Excel遇到的各种问题
excel
2501_930707784 天前
使用C#代码使用条件格式为 Excel 隔行设置颜色
c#·excel
leihefeng4 天前
PX04-用 Python 读 Excel 画折线图,还能直接插回 Excel 文件
python·excel
yanlaifan4 天前
Excel中指定单元格不能输入内容的方法
excel
babe小鑫5 天前
信息与计算科学专业应届生面试 怎么证明自己能解决业务问题
学习·r语言·excel
Data-Miner5 天前
商品ABC分类分析怎么用AI做?脚本复用+图表可编辑的一次完整实操
人工智能·数据分析·excel
E-iceblue8 天前
Excel 列转行/行列转换全指南:从 4 种常见解法到 Python 批量自动化
python·excel·python库·spire.xls
Data-Miner8 天前
AI处理数据的脚本复用与逻辑复用有什么区别?哪种方式更能沉淀工作成果
数据分析·excel
福兮说8 天前
在浏览器里写一个“够用就好“的 Excel 公式求值器
前端·javascript·excel·编译原理
慧都小妮子9 天前
标签打印如何减少手工抄数?用Bartender 直连 Excel 批量打印
excel·bartender·条码打印·标签打印软件·数据驱动打印·工业打印机