Chapter 11

Softmax(转为概率)

将向量变为(0,1)内且和为1的概率分布的函数。

按章节的深度学习图示

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

Softmax分数→概率(例:e≈3)
分数
3
1
0
中间
27
3
1
3的幂
3³=27
3¹=3
3=1
概率
27/31
3/31
1/31
除以和
27÷31=27/31
3÷31=3/31
1÷31=1/31

3做幂得 27(3的3次方)

27/31=27 ÷ 31

深度学习中的 Softmax

Softmax 是一个把多个分数(数值)转换成概率的函数。所有值变为 0 到 1 之间,且加起来恰好等于 1。因此可以当概率来读。

公式为 softmax(xi)=exijexj\mathrm{softmax}(x_i) = \frac{e^{x_i}}{\sum_{j} e^{x_j}}。由于用了 e 的幂次(e ≈ 2.718),最大的分数会被显著放大,其余的相对缩小。第一名和第二名的差距会更加悬殊。

例如:分数 [3, 1, 0] → e³≈20,e¹≈2.7,e⁰=1 → 总和 ≈ 23.7 → 概率 ≈ [0.84, 0.11, 0.04]。分数 3 本来只是 1 的 3 倍,概率却变成了约 8 倍!

Softmax 用在几乎所有分类模型的最后一层。「这张照片 70% 是狗、25% 是猫、5% 是鸟」——让你看到各类别的概率以及模型有多确信

交叉熵损失搭配训练时,梯度推导干净又稳定。模型自然会学到「提高正确类别的概率、降低其余类别的概率」。

Softmax「所有值为正且和为 1」的性质恰好符合概率分布的定义。从统计学和理论上看,它都是把分数转为概率的最自然的方式

图像分类:模型最后一层输出分数(logits),如 [5.2, 2.1, 0.8, ...]。Softmax 将其转为 [0.70, 0.25, 0.05, ...]——各类别的概率。概率最高的类别就是最终答案。

聊天机器人与翻译:ChatGPT 选择下一个词时,对词表中所有词(数万个!)打分,经 Softmax 转为概率后按概率采样。高概率的词常被选中,但偶尔也会选低概率的词增加多样性。

注意力机制:在翻译中,「关注哪些输入词」的相关度分数经 Softmax 变为概率(权重)。这些权重用来做加权平均,突出最相关的部分。

计算顺序:① 算 Z=WX+bZ = W \cdot X + b(logits)→ ② 算 eZe^Z(题目用 e3e \approx 3)→ ③ 算 Σ\Sigma(总和)= 所有 eZe^Z 相加 → ④ Y=eZΣY = \frac{e^Z}{\Sigma}(各项除以总和)。按此顺序来。

填空策略:空白在 Y 中就算「该 eZ÷Σe^Z \div \Sigma」。空白在 eZe^Z 中就算「Y×ΣY \times \Sigma」。空白在 Z 中就从 eZe^Z 反推。空白在 Σ\Sigma 中就把所有 eZe^Z 加起来。

验算:算完后检查所有 Y 值是否在 0 到 1 之间和为 1。如果不是,说明计算有误。另外确认题目用的是 e3e \approx 3 还是 e2.718e \approx 2.718

Softmax 把数变成 0~1 之间且和为 1。先算 Z=WX+bZ = W \cdot X + b,再算 eZe^Z,再除以总和 Σ\Sigma 就得到类似概率的输出。

分数(ZZ) → 3Z3^Z → 除以和 → 概率(YY)

XX
1
1
\cdot
W
1
1
0
1
+
b
1
1
=
ZZ
3
2
3Z3^Z
27
9
Σ\Sigma
36
YY
3/4
1/4

多分类最后一层常用。

例:一步计算过程

Z1=11+11+1=3Z_1 = 1 \cdot 1 + 1 \cdot 1 + 1 = 3
Z2=01+11+1=2Z_2 = 0 \cdot 1 + 1 \cdot 1 + 1 = 2
3Z1=33=273^{Z_1} = 3^3 = 27
3Z2=32=93^{Z_2} = 3^2 = 9
Σ=27+9=36\Sigma = 27 + 9 = 36
Y1=3Z1Σ=2736=34Y_1 = \frac{3^{Z_1}}{\Sigma} = \frac{27}{36} = \frac{3}{4}
Y2=3Z2Σ=936=14Y_2 = \frac{3^{Z_2}}{\Sigma} = \frac{9}{36} = \frac{1}{4}

题目

Z=WX+bZ = W \cdot X + b, eZ    (e3)e^Z \;\; (e \approx 3), Y=eZΣY = \frac{e^Z}{\Sigma} 顺序计算后填入空白(?)处。

本题中为便于计算取 e = 3,即 eZ=3Ze^Z = 3^Z。(例:Z=1 → 3,Z=2 → 9)

分数(ZZ) → 3Z3^Z → 除以和(Σ\Sigma) → 概率(YY)

X
1
1
·
W
1
1
1
-1
+
b
-1
1
=
Z
1
1
eZ
3
Σ\Sigma
6
Y
1/2
1/2
概率
0.5
0.5
1 / 20