返回课堂

完整深入材料 · 保留原页与全部停点。回到相关主讲

归一化以后,就是熟悉的softmax读取

本页问题

回到两条key、β=4的例子,把正响应归一化成总和1。

AM13/b0 · 从相对大小变成分配

二维算例 · 查询 kA · 原分数 [1, 0.6] · β = 4取指数54.59811.023除以同一总和 65.6210.83200.1680加权 value0.8320 vA+ 0.1680 vB83.20% A16.80% B两项之比不变;总和变为 1
从相对大小变成分配

现在回到两条分数1和0.6、β等于4的手算例。这两项都除以总和,就得到大约百分之八十三和百分之十七。总和是1了,但两者之间的相对比例没有改变。我们仍然读回两个value的混合,只是更偏向与查询匹配的那一项。

教师备课:指图与模拟问答

指图与推进 · 不朗读回到二维β=4,把54.598和11.023都除以65.621。

AM13/b1 · 认出softmax

二维算例 · 查询 kA · 原分数 [1, 0.6] · β = 4取指数54.59811.023除以同一总和 65.6210.83200.1680加权 value0.8320 vA+ 0.1680 vB83.20% A16.80% B两项之比不变;总和变为 1softmax(βKx) → 权重 → Vᵀ 加权汇总仍是混合读取,不是自动只选最高项
认出softmax

“算匹配、取指数、除以总和、加权value”,就是softmax注意力的基本读取方式。现在这些步骤不只是需要背的公式:前面的干扰问题说明了,为什么会关心强弱匹配之间的差别。

教师备课:指图与模拟问答

指图与推进 · 不朗读沿匹配→指数→归一化→value汇总认出softmax。

AM13/b2 · 与上一讲的记号对齐

二维算例 · 查询 kA · 原分数 [1, 0.6] · β = 4取指数54.59811.023除以同一总和 65.6210.83200.1680加权 value0.8320 vA+ 0.1680 vB83.20% A16.80% B两项之比不变;总和变为 1列向量、单位长度约定上一讲的常用记号Vᵀ softmax(βKx)softmaxQKᵀdkV向量长度约定不同 · 典型长度约dk时,对应 β ≈dk
与上一讲的记号对齐

上一讲把query和key的内积除以维度的平方根。这里为了方便分析,把向量先规范成单位长度,再使用一个锐度系数。两套记号的向量长度约定不同,不能只看一个在乘、一个在除,就认为计算方向相反。我们在说明里把它们换算清楚。

进一步解释

标准attention为$\mathrm{softmax}(QK^\top/\sqrt{d_k})V$。若实际q/k的范数约为$\sqrt{d_k}$,改为单位向量后可对应β约$\sqrt{d_k}$。稳定softmax先令$z_i=\ell_i-\max_j\ell_j$,再计算$e^{z_i}/\sum_j e^{z_j}$。

教师备课:指图与模拟问答

指图与推进 · 不朗读对齐列向量单位长度约定与标准attention记号,说明缩放条件。

接下来

读取公式已经连起来了。还差一个关键问题:实际Transformer到哪里拿这些key和value?

补充推导、边界与来源

回到两条key、β=4的例子,把正响应归一化成总和1。

用列向量查询记号,f(x)=Vᵀsoftmax(βKx)。标准attention为softmax(QKᵀ/√d_k)V,差别包括行列约定和Q投影。若q、k的典型长度约√d_k,其内积缩放可对应单位向量约定下β≈√d_k,不是对任意训练模型都精确成立。实现稳定softmax需先减最大logit,再指数和归一化;仅“除以总和”不能保证计算中不溢出。Transformer原论文。

来源与继续阅读

Alex Wang:对应原文小节。

I04 原阅读材料。旧阅读材料保留自身的算例与记号;不要将旧三条目行向量例与本节两条目列向量例混算。

完整推导与实验口径 · 原文配套源码入口。

本页证据与条件

教学构造与机制示意;非模型实测

进入主题正文