# Transformer 编码器-解码器 & Q/K/V 学习笔记 ## 一、整体结构 主流序列任务(翻译等)采用 **Encoder 编码器 + Decoder 解码器** 架构。 1. 编码器 - 接收原始输入序列(文字/符号) - 将文本转为连续向量 $\boldsymbol z$ - 由 $\boldsymbol z$ 生成整套 **K、V 向量** - 作用:生成静态知识库,全程固定不变 2. 解码器 - 接收编码器的 KV 信息 - **自回归方式逐词生成输出** - 每一步只预测下一个字词 --- ## 二、自回归定义 解码器生成时,**依赖已经生成的前文内容**: 每预测下一个词,都会把前面所有输出当作输入,逐步往后推导,一字一词生成完整句子。 ## 三、Q / K / V 核心分工 1. $\boldsymbol K$(键):原文内容的「标签/索引」,编码器产出 2. $\boldsymbol V$(值):原文内容的「实际特征信息」,编码器产出 3. $\boldsymbol Q$(查询): - 由**解码器**实时生成 - 来源:解码器当前隐藏状态(已生成的上文语境) - 本质:**一串多维数字向量**,代表「我当前需要什么信息」 ## 四、完整运行流程 1. 编码器处理原文 → 生成固定 $\boldsymbol K、\boldsymbol V$ 2. 解码器根据已生成的上文 → 实时计算出专属 $\boldsymbol Q$ 3. 解码器用 $\boldsymbol Q$ 和所有 $\boldsymbol K$ 计算相似度 4. 匹配度越高,对应 $\boldsymbol V$ 权重越大 5. 融合原文V信息 + 解码器自身上文 6. 计算词汇概率,输出下一个词,循环往复 ## 五、关键结论 1. KV 来自编码器,静态不变;Q 来自解码器,动态每步刷新 2. 是**解码器主动拿 Q 去检索 KV**,编码器只负责生产素材 3. Q/K/V 全是纯数字向量,模型靠向量相似度判断语义关联 4. 翻译生成 = 交叉注意力(Q查KV)+ 自回归逐字接龙