From ca576003599dd90935ce36c64944ccffa5b2d40a Mon Sep 17 00:00:00 2001 From: skindhu Date: Fri, 1 Nov 2024 15:44:18 +0800 Subject: [PATCH] add third chapter --- cn-Book/3.实现注意力机制.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cn-Book/3.实现注意力机制.md b/cn-Book/3.实现注意力机制.md index 81f8234..b8b8b62 100644 --- a/cn-Book/3.实现注意力机制.md +++ b/cn-Book/3.实现注意力机制.md @@ -623,6 +623,6 @@ print(attn_weights_2) > + **Softmax函数的特性**:在计算注意力权重时,点积结果会通过Softmax函数转换为概率分布。而Softmax函数对输入值的差异非常敏感,当输入值较大时,Softmax的输出会趋近于0或1,表现得类似于阶跃函数(step function)。 > + **梯度消失问题**:当Softmax的输出接近0或1时,其梯度会非常小,接近于零(可以通过3.3.1小节中提到的Softmax公式推断)。这意味着在反向传播过程中,梯度更新幅度会很小,导致模型学习速度减慢,甚至训练停滞。 > -> 为了解决上述问题,在计算点积后,将结果除以嵌入维度的平方根(即 $` \sqrt{dk} `$),其中 dk 是键向量的维度。这样可以将点积结果缩放到适当的范围,避免Softmax函数进入梯度平缓区,从而保持梯度的有效性,促进模型的正常训练。$`\sqrt{\$4}`$ +> 为了解决上述问题,在计算点积后,将结果除以嵌入维度的平方根(即 $` \sqrt{dk<\/sub>} `$),其中 dk 是键向量的维度。这样可以将点积结果缩放到适当的范围,避免Softmax函数进入梯度平缓区,从而保持梯度的有效性,促进模型的正常训练。$`\sqrt{\$4}`$ > >