返回课堂

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

固定的是 W,改变的是这次进入计算的 X

N34/b0 · 相同权重,不同输入

上方参数固定:同一组 WQ / WK / WV
Translate English to French. English: cheese French:
→
X₀当前表示
→
K₀ = X₀WₖV₀ = X₀Wᵥ没有示例的当前状态
Translate English to French. English: sea otter French: loutre de mer English: cheese French:
→
X₁当前表示
→
K₁ = X₁WₖV₁ = X₁Wᵥ示例新增位置;后续表示受上下文影响

当前位置 Q → 合法前缀 K/V → 读回内容 → FFN / 其余层 → 词表分布

没变:训练权重;没有反向与优化器。

变了:输入位置、X、K/V与可能的输出分布。

相同权重,不同输入

先看上方固定参数框,同一组投影矩阵没有更新。下面两行是刚才的两份完整提示:第一行没有示例,形成当前表示 X₀;第二行在 cheese 问题前加了示例,输入位置和内容都不同,形成 X₁。这里的 X 表示当前层接收的向量,而不是原始文字编号。

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

指图与推进 · 不朗读先指固定参数框,再沿上下两份完整输入指向 X₀、X₁。

N34/b1 · 形成不同K/V

上方参数固定:同一组 WQ / WK / WV
Translate English to French. English: cheese French:
→
X₀当前表示
→
K₀ = X₀WₖV₀ = X₀Wᵥ没有示例的当前状态
Translate English to French. English: sea otter French: loutre de mer English: cheese French:
→
X₁当前表示
→
K₁ = X₁WₖV₁ = X₁Wᵥ示例新增位置;后续表示受上下文影响

当前位置 Q → 合法前缀 K/V → 读回内容 → FFN / 其余层 → 词表分布

没变:训练权重;没有反向与优化器。

变了:输入位置、X、K/V与可能的输出分布。

形成不同K/V

把同一个W乘在不同的X上,结果当然可以变化。这里写K等于X乘WK、V等于X乘WV,是在某一层把输入表示投影成读取接口;WK和WV可以保持不动,本次K和V仍然会改变。

进一步解释

第一层 X 来自 token 与位置表示,后层 X 是上下文化后的层输入。此页把示例放在待答问题前面,不推广为纯因果模型追加新 token 后所有旧位置都会改变。

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

指图与推进 · 不朗读推进,分别指 K=XWₖ、V=XWᵥ,保留上方 W 不动;逐字分清参数和当次状态。

N34/b2 · 沿前向读取预测

上方参数固定:同一组 WQ / WK / WV
Translate English to French. English: cheese French:
→
X₀当前表示
→
K₀ = X₀WₖV₀ = X₀Wᵥ没有示例的当前状态
Translate English to French. English: sea otter French: loutre de mer English: cheese French:
→
X₁当前表示
→
K₁ = X₁WₖV₁ = X₁Wᵥ示例新增位置;后续表示受上下文影响

当前位置 Q → 合法前缀 K/V → 读回内容 → FFN / 其余层 → 词表分布

没变:训练权重;没有反向与优化器。

变了:输入位置、X、K/V与可能的输出分布。

沿前向读取预测

再看当前要生成法语的那个位置。它的查询只能读取已经给出的合法前缀,包括任务说明、示例和当前英文。读回的内容还要经过后续计算,才形成词表分布。示例不是被剪贴到某个神秘的临时数据库里就自动完成任务;它作为输入的一部分,参与了模型这次完整的前向计算。后续层的状态也会受到影响。

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

指图与推进 · 不朗读推进,沿 Q→合法前缀 K/V→读回内容→FFN/其余层→词表分布。

N34/b3 · 核对哪里改变

上方参数固定:同一组 WQ / WK / WV
Translate English to French. English: cheese French:
→
X₀当前表示
→
K₀ = X₀WₖV₀ = X₀Wᵥ没有示例的当前状态
Translate English to French. English: sea otter French: loutre de mer English: cheese French:
→
X₁当前表示
→
K₁ = X₁WₖV₁ = X₁Wᵥ示例新增位置;后续表示受上下文影响

当前位置 Q → 合法前缀 K/V → 读回内容 → FFN / 其余层 → 词表分布

没变:训练权重;没有反向与优化器。

变了:输入位置、X、K/V与可能的输出分布。

核对哪里改变

因此“没有更新参数”绝不等于“模型内部什么也没变”。我们冻结的是训练所得的规则,不是这次运算产生的中间状态。把任务信息放进当前上下文后,模型可以表现出对该任务的适应,这就是这里讨论的上下文学习。机制图告诉我们变化从哪里进入,但它没有保证变化总会有益。要回答示例有没有实际帮助,仍然要离开这个单词演示,去看许多完整任务上的结果。

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

指图与推进 · 不朗读推进,比较没变/变了两栏;机制讲完后转向真实翻译任务指标。

补充推导、边界与来源

在某层,固定投影权重与不同层输入产生不同的当前K/V:$K=XW_K$,$V=XW_V$。第一层X来自token和位置表示,后层X是上下文化后的层输入。本例从当前问题前插入示例,后续位置及条件改变;不要推广为纯因果模型追加token后所有旧位置都会变化。普通ICL只作前向,不执行优化器更新,也不等价于宣称内部算法必然是梯度下降。

来源与材料身份

  • 原始入口:§2:few-shot评测仅前向,无权重更新;Q/K/V数学关系承接L5已讲Transformer
  • 原始入口:参数更新与当前输入两条路径的既有基线
本页证据与条件

教学构造与教师参考;不是模型运行结果

进入主题正文