这是版本9保留的原页与原停点。第一节已重新编排;打开对应新内容。
attention 读取的内容,是这次输入算出来的
N08/b0 · 固定参数与当前输入
上一页我们把三张卡的读取接回了 MLP。现在看 attention:上面这一组矩阵,是训练已经留下来的参数;左边的 X,是眼前这一份材料经过前面计算形成的表示,不是原始 token ID。相同的矩阵接收不同的 X,会算出不同的 K 和 V。当前位置还会形成自己的 query,用它来读取允许范围内的内容。先认清这两类对象:留下来的计算参数,与这一次才算出来的状态。
教师备课:指图与模拟问答
指图与推进 · 不朗读先指上方固定投影参数,再指左侧 X 及 K=XW_K、V=XW_V,最后指 q 的来源。
N08/b1 · 当前数字进入 K/V
这里是开场那份实验:同样设置下,A 十二秒,B 八秒,内存没有测。这次新产生的数字已经随文字进入 X,所以后续可以读取与它们有关的内容。图上十二和八标识信息来自哪一份输入,不是说两个数字原样占据两个表示坐标。模型不必先为这一份实验做一次训练,才能使用我们刚交给它的记录。
教师备课:指图与模拟问答
指图与推进 · 不朗读指材料 12/8,再指高亮 X 与 K/V;数字标识来源,不代表表示里的直接数值槽。
N08/b2 · 读出继续交给 MLP
读取以后,结果还要交给后面的 MLP 等计算,继续变换表示。这一层本身也只是整个模型的一部分。我们能从图中说清当前信息怎样进入计算;还不能拿某一层的几项 attention 权重,就代替整个模型怎样理解任务的解释。两类计算都使用训练留下的参数,也都作用于当前表示。现在保持参数不变,换一份材料,看看当次状态能不能变。
进一步解释
只观察这一层的信息来源与计算依赖。attention 的局部权重不能独自解释整套模型怎样理解材料;X 本身也已经可能包含前面层形成的上下文信息。
教师备课:指图与模拟问答
指图与推进 · 不朗读沿 attention→MLP 的新箭头读;把完整网络解释与本层信息流分开。
N08/b3 · 另一次请求改变 X
现在 A 七秒、B 十一秒。上方参数仍是原来那一组;左边 X 换了,算出的 K/V 和后续表示也会随之改变。所以“参数固定”不意味着每次输出固定,而是这轮普通推理没有做参数更新。我们这里重新计算的是另一份完整输入,不是在一份旧缓存中偷偷改数字。用过这些数字以后,下一次还能直接知道吗?接下来先把材料切回开场那份 A 十二秒、B 八秒,再追踪一次请求结束后,信息通过什么路径被保留下来。
教师备课:指图与模拟问答
指图与推进 · 不朗读指已换成 7/11 的完整材料,再指仍未变的参数框;讲清下一页会切回开场 12/8。
补充推导、边界与来源
上方 W_Q、W_K、W_V 是训练留下的投影参数,下方当前表示 X 产生 K=XW_K 与 V=XW_V。X 不是原始 token ID;中间层表示还依赖此前计算及合法前文。另一次请求将 12/8 改为 7/11 时,必须重新按新输入计算当前状态,不表示可以修改已有 cache 中的文本而继续复用不兼容状态。
来源:Transformer attention 公式及Alex Wang self-attention 分析。
相关的完整阅读材料保留原有公式、引用和原始图解。
本页证据与条件
教学构造与机制示意;非模型实测