Chapter 09

深度(深层网络)

隐藏层多、层数多;即「深度学习」中的「深度」。

按章节的深度学习图示

每完成一章,下方图示会逐步填满。这是目前的结构。

隐藏层(中间步骤)多。深度学习里的「深」就是指这个深度。

X1X2X3A1A2A3B1B2B3C1C2C3D1D2D3Y1Y2Y3X第1层A第2层B第3层C第4层D第5层Y第6层

步骤越多网络越深。越深越能学习更精细的模式。

深度学习中的深度

意味着有很多隐藏层(中间阶段)「深度学习」中的「深度」指的就是这个! 每层做 Linear(W·输入+b)+ 激活(ReLU),再把结果传给下一层。

X → A → B → C → … → Y——阶段越多,网络越深。类比:1 层只能「画一条线」,10 层能「画简单图形」,100 层能「画一张人脸」。深度越大 = 越能表达精细、复杂的模式

但并非越深越好。层数太多会导致梯度消失(学习信号传不到浅层)或过拟合(死记训练数据而非学到通用规律)。

更多层能表达更复杂的函数。 每层的激活加入「弯折」,层层叠加就能组合出非常复杂的曲线和决策边界

在图像识别中:第 1~2 层学到「线条、边缘」,第 3~5 层学到「眼睛、鼻子、轮子」,第 6 层以上学到「狗、汽车」。这一切都有赖于深度

ResNetTransformer 等著名架构可以深达数十到数百层且依然训练得好。秘诀是跳跃连接(残差连接):梯度可以跳过若干层直达浅层。这些技巧克服了「深度的极限」。

ChatGPT:GPT-4 由数十到上百个 Transformer 块组成。每个块更深入地理解上下文,最后一层生成答案。

自动驾驶:摄像头图像经过深度网络(如 ResNet-152,152 层!)来精准区分障碍物、车道线和交通标志。深度使其能应对复杂路况。

语音识别与翻译:语音转文字、中文转英文也要经过深度网络,每层逐步捕捉「音素 → 词 → 语境 → 语义」。

例题:输入 X = [3, 1, 2]。第 1 层:W₁·X+b₁ = [4, -1, 2](线性),ReLU 后 A = [4, 0, 2]。第 2 层:W₂·A+b₂ = [2, 1, 5],ReLU 后 B = [2, 1, 5]。若 A₂ 为空白

解法:第 1 层线性输出的第二项为 -1,故 ReLU(-1) = 0。因此 A₂ = 0。中间层空白时,先算该层 线性(W·输入+b),再应用 ReLU(负→0) 即可。

一般步骤:无论空白在哪一层的第几个神经元,先按顺序算到该层输入,再用该层 W 的对应行与输入做内积并加上 b 的对应项得线性值,最后 ReLU 即得答案。

输入 X
3
1
2
Linear & ReLU(第 1 层)
W₁
1
0
1
0
1
-1
1
-1
0
b
-1
0
0
线性
4
-1
2
ReLU
A
4
0
2
Linear & ReLU(第 2 层)
W₂
0
0
1
0
1
0
1
0
2
b
0
1
-3
线性
2
1
5
ReLU
B
2
1
5

第1层: A₁, A₂, A₃ (W₁ 各行·X + b₁)

A1 = (W₁ 第1行·X)+b₁[0] = (1×3+0×1+1×2)+(-1) = 4 → ReLU = 4
A2 = (W₁ 第2行·X)+b₁[1] = (0×3+1×1+-1×2)+(0) = -1 → ReLU(-1)=0 → 0
A3 = (W₁ 第3行·X)+b₁[2] = (1×3+-1×1+0×2)+(0) = 2 → ReLU = 2

第2层: B₁, B₂, B₃ (W₂ 各行·A + b₂)

B1 = (W₂ 第1行·A)+b₂[0] = (0×4+0×0+1×2)+(0) = 2 → ReLU = 2
B2 = (W₂ 第2行·A)+b₂[1] = (0×4+1×0+0×2)+(1) = 1 → ReLU = 1
B3 = (W₂ 第3行·A)+b₂[2] = (1×4+0×0+2×2)+(-3) = 5 → ReLU = 5

第1行| 第2行| 第3行

题目

在多层连续前向传播(每层 Linear & ReLU)中填入空白(?)处。

输入 X
-1
-2
W
-2
-2
0
0
b
-2
-2
线性
4
-2
ReLU
A
4
0
W
2
1
-2
-2
b
1
2
线性
9
-6
ReLU
Y
9
1 / 20