大模型推理(五):最后一个词说出下一个新词
回顾:
- Q、K、V 都是词元(token)级别的投影。
- 注意力机制是将 Q 与 K 进行比较,以确定谁影响了谁,然后从 V 中提取信息。
现在,回答一个更尖锐的问题:这些token的输出是如何变成“最终输出”的?
这是分层的情况:
1. 经过注意力机制后,每个token的表征:这还不是最终的token。该输出会经过 Transformer 模块内的前馈网络(一个小型多层感知器 (MLP))。然后,它会经过归一化层、残差连接,最终到达下一个 Transformer 层。
2. 堆叠层(stacking layers):每一层都会细化token的表征。想象一下,每个词向量都会被一遍又一遍地重新绘制,但会带有更清晰的语境,语气、意图和依赖关系。
3. 每个位置的最终隐藏状态:在最后一个 Transformer 模块之后,每个 token 都有一个深度语境化的向量。
4. 最后一个位置对生成至关重要:在预测下一个 token 时,模型会查看序列中最后一个 token 的隐藏状态。该向量会通过最后一个线性层和 softmax 进行投影,从而生成词汇表上的概率。
P(\text{token}_{t+1} \mid \text{tokens}_{\leq t}) = \text{softmax}(h_t W^{\text{out}})
所以,从某种意义上来说,所有 token 都通过注意力层相互贡献。但是当模型真正说出下一个单词时,模型会将最后一个位置的输出向量作为摘要信号。
步骤 1 — Q/K/V 投影:每个 token 都会变成自身的三个不同“视图”。这些视图用于衡量相关性(Q 与 K)并收集信息(来自 V)。
步骤 2 — 分层细化和预测:这些包含丰富上下文的向量会向上传递到 Transformer 堆栈。每一层都会对信息进行锐化、组合和重新混合。最终,最后一个 token 位置的最终向量会变成一种经过提炼的“迄今为止对话的状态”。然后,该向量会被输入到输出层,用于预测下一个 token。
这就像一个合唱团,每个人都在唱歌,塑造着和声,但只有最后一个歌手的音符才会被广播为下一句歌词。
更多推荐



所有评论(0)