大模型面试题:推导一下softmax中为啥要除以根号d
·
我整理好的1000+面试题,请看
大模型面试题总结-CSDN博客
或者
https://gitee.com/lilitom/ai_interview_questions/blob/master/README.md
最好将URL复制到浏览器中打开,不然可能无法直接打开
-------------------------------------------------------------------------------------------------
好了,我们今天针对上面的问题,
推导一下softmax中为啥要除以根号d
先看下具体的详细推导,文末有代码来可视化的证明。
-
1. 定义与假设 这里我们需要事先做一个假设:
-
和 是两个独立的随机矩阵,维度均为 。
- 每个元素 和 是独立同分布(i.i.d.)的随机变量,满足:
-
均值 ,
-
方差 。
-
计算 的任意一个元素 =。
-
2. 计算均值 由于 和 独立且均值为 0:
-
3. 计算方差 方差定义为:
由于 ,第二项为 0,因此:
展开平方项:
因此:
由于 和 独立:
-
对于交叉项 :
因为 和 独立(),且 ,同理 。
-
对于平方项:
综上:
-
4. 缩放因子的作用 为了控制方差,使 的方差为 1(便于 Softmax 计算和梯度稳定),我们对其除以 :
此时,方差变为:
-
5. 直观解释
-
未缩放时: 的方差随 线性增长,导致 Softmax 输入值过大,输出接近 one-hot 分布,梯度消失。
-
缩放后:方差稳定为 1,Softmax 输入分布更平滑,梯度传播更稳定。
更多推荐
所有评论(0)