跳到主内容
快讯直播
AI智模界
AI 词典

注意力缩放因子(1/√d):注意力里的"音量旋钮

一句话定义:注意力缩放因子是点积注意力(dot-product attention)在送进 softmax 之前,对 Query 和 Key 的点积结果乘以的一个系数 1/√d,其中 d 是每个注意力头里向量的维度。它的唯一使命,是防止 softmax 被过大的数值"撑爆"。

不缩放会怎样

注意力机制的核心动作是:拿当前词的 Query 向量,去和每个词的 Key 向量做点积,得分越高表示"越该关注"。然后 softmax 把这些得分变成一组加和为 1 的权重。

问题出在点积上。假设 Q 和 K 的每个分量都是均值 0、方差 1 的独立随机数,那么 d 维点积就是 d 个乘积之和,它的方差会变成 d,标准差变成 √d。也就是说,维度越高,点积的绝对值天然就越大。

打个比方:softmax 像按"得票数"分一块蛋糕。如果每个人只有 0~10 票,票数虽有高低,蛋糕还是分得比较开;但如果维度一高,每个人的票数都在几百上千的量级上乱跳,第一名和第二名差出几十倍,蛋糕就几乎被第一名独吞了。

这正是 softmax 的饱和(saturation):输入差距越大,输出越接近"一个 1、其余全 0"的 one-hot 分布。而 softmax 在这种状态下的梯度几乎为零——梯度推不动参数,模型学不到东西。除以 √d,就是把方差从 d 拉回 1,让得分回到温和的区间。

和相邻概念的区别

概念作用位置目的
1/√d 缩放点积之后、softmax 之前抵消维度带来的方差膨胀,防饱和
温度参数">温度参数(temperature)softmax 内部分母人为调节输出分布的软硬程度
归一化层(如 AI 词典:LayerNorm">LayerNorm)各层的激活上稳定整体数值分布

值得注意的是,1/√d 本质上就是一个固定为 √d 的温度。两者做的是同一件事,只是一个由维度自动决定,一个由人手动调。

对实际工作的意义

对从业者:注意力头的维度调大时,缩放因子的必要性会迅速上升;在低精度训练里,未缩放的巨大点积还容易造成数值溢出。这也解释了为什么有些实现把缩放系数做成可学习参数,或在注意力内部再加一次归一化。它与具体实现和硬件相关,细节以官方实现为准。

对普通人:它解释了为什么大模型不会"死盯一个字"。没有这个系数,注意力会退化成硬邦邦的查表,模型根本训不起来。你看到的每一次流畅续写,背后都有这个不起眼的根号在维持秩序。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。