COMP5318 Week 07 前馈神经网络与反向传播讲课总结

COMP5318 W07 考点速成:感知机、MLP 与反向传播

用时约 15 分钟。必考:前向传播大题(PE1 Q32、PE2 Q34,各 10 分)、感知机更新、梯度下降一步、ReLU、Dropout。对应 PE1 Q18、Q19、Q23、Q32,PE2 Q18、Q19、Q23、Q34。

一、知识点

1. 神经元与感知机

flowchart LR
  X["输入 x"] --> A["a = step(w·x + b)"]
  A --> E["e = t − a"]
  E -->|"e ≠ 0"| U["w ← w + ηex<br/>b ← b + ηe"]
  U --> X
  E -->|"全部分对"| S["停止"]
  • 神经元 ;感知机用阶跃函数( 输出 1,否则 0)。
  • 感知机学习规则:

(讲义版 。偏置相当于输入恒为 1 的权重,别忘了更新。) - epoch = 过一遍训练集;每个 epoch 末检查是否全部分对(检查那一遍不改权重)。 - 线性可分 ⇒ 保证有限步收敛,但找到任意一条分界线就停(不像 SVM 找最大间隔)。 - AND、OR、NAND 线性可分;XOR 不可分,要两层:XOR = AND(NAND, OR)。

2. MLP 与反向传播

flowchart LR
  I["输入层"] -->|"前向:加权和 + 激活"| H["隐藏层"]
  H -->|"前向"| O["输出层 o"]
  O --> L["误差 t − o"]
  L -->|"反向:δ_out = (t−o)·o(1−o)"| O
  O -->|"反向:δ_hid = o(1−o)·Σ wδ"| H
  H -.->|"Δw = η·δ·o_prev"| I
  • 前馈、全连接;激活函数必须可导。sigmoid , 。
  • 权重更新 :
位置 (sigmoid)
输出层
隐藏层 (用更新前的上层权重)
  • 输入为 0 的连接权重不变( )。
  • 梯度下降: ,沿负梯度走;可能停在局部最小。
  • 全批量 GD(全部样本后更新)/ SGD(每个样本后更新)/ mini-batch(每批后更新,梯度随抽到的样本变化,所以更「吵」)。
  • 通用逼近定理:一个隐藏层可逼近任意连续函数——只是存在性,不告诉你怎么选结构。

3. 设计与训练技巧

  • 输入:数值属性 1 个神经元;名义属性 one-hot。输出: 类 个神经元 + softmax;二分类可用 1 个 sigmoid。
  • 隐藏神经元太多过拟合、太少欠拟合;学习率太小慢、太大振荡;可衰减( );momentum 减少振荡。
  • 不能全零初始化:同层神经元永远相同(对称性)。Xavier: 。
  • 梯度消失:sigmoid 饱和时 ,层层相乘 → 低层几乎不学。ReLU 缓解(负输入输出 0,不是概率)。
  • Dropout:训练时随机暂时关掉部分神经元,减少共适应,是正则化;推理时用完整网络(原始做法推理时缩放权重;inverted dropout 训练时已缩放)。
  • Softmax ;分类用交叉熵损失 。
  • 早停:验证准确率不再提升就停(用验证集,不用测试集)。

4. 前向传播大题模板

① 算每个隐藏单元的预激活 → ② 套激活(ReLU 把负数截成 0)→ ③ 算输出 → ④ → ⑤ 判类 1。 「把某个单元的 ReLU 换成恒等」时,只有原来被截成 0 的负值单元会变。常用: , , 。

二、考点

  1. ★★★ 前向传播大题(两套卷都考)。
  2. ★★★ 感知机更新: 的符号、偏置也要更新。
  3. ★★ 梯度下降一步: 。
  4. ★★ ReLU 负输入输出 0;Dropout 是正则化、推理用全网络;mini-batch 为什么噪声大。
  5. ★ XOR 线性不可分;梯度消失的原因。

三、题目

Q1(PE1 Q32,10 分大题) , ; , ,隐藏层 ReLU, ,输出 。(a) 求 ;(b) 求 、概率、类别;再把只把 B 换成恒等激活,求新概率和类别。

  1. , ; , 。
  2. , 0.731 → 类 1。B 换恒等: , , 0.269 → 类 0,分类翻转。

Q2(PE2 Q34,10 分大题) , ; , ,ReLU, 。同样两问,修改的是 A。

  1. , ; , 。
  2. , 0.881 → 类 1。A 换恒等: , ,0.269 → 类 0。

Q3(PE1 Q19) 感知机 , , ; ,输出 ,目标 。更新后?

。 (0, −0.4), −0.1。

Q4(PE2 Q19) ,梯度 ,学习率 0.1,一步梯度下降后?

(0.2, −0.8)。

Q5(PE1 Q18) ReLU 单元的预激活为负,输出?

0。

Q6(PE2 Q18) 为什么 mini-batch 梯度下降的更新比全批量更「吵」?

每次只用抽到的一部分样本估计梯度,梯度随样本变化;全批量用整个训练集的平均梯度。

Q7(PE1 Q23) 标准 dropout 训练中,为什么每次更新随机关掉不同的隐藏单元?

减少对特定隐藏单元组合的依赖,抑制过拟合。单元不会被永久删除。

Q8(PE2 Q23) 用 dropout 训练好的网络,标准推理怎么做?

用完整网络;缩放方式与训练约定一致(inverted dropout 训练时已缩放,推理不再缩放)。

Q9(自拟) 单个 sigmoid 输出神经元 ,目标 ,求 ;若前一神经元输出 0.332、 ,求该权重改变量。

0.131; 0.039。

Q10(自拟) Softmax 输入 (0.3, 0.8, 0.2),哪个类概率最大、约多少?

第 2 类,约 0.46(三个约为 0.28、0.46、0.26)。