From 5b9268a01c61d3eeef8aafba32ebf55d3cbb4695 Mon Sep 17 00:00:00 2001 From: skindhu Date: Fri, 1 Nov 2024 15:40:15 +0800 Subject: [PATCH] add third chapter --- cn-Book/3.实现注意力机制.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cn-Book/3.实现注意力机制.md b/cn-Book/3.实现注意力机制.md index 46b4484..930b3d7 100644 --- a/cn-Book/3.实现注意力机制.md +++ b/cn-Book/3.实现注意力机制.md @@ -623,4 +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{dk} $),其中 dk 是键向量的维度。这样可以将点积结果缩放到适当的范围,避免Softmax函数进入梯度平缓区,从而保持梯度的有效性,促进模型的正常训练。 +> +>