大模型原理:传统的注意力(Attention)机制和自注意力(Self-Attention)机制、上下文向量 作者:马育民 • 2026-01-11 17:21 • 阅读:10000 # 传统的注意力机制 传统的注意力机制关注的是 **两个不同序列元素之间的关系**,比如在序列到序列模型中,如下图机器翻译,**传统的注意力(Attention)在 输入序列 和 输出序列 之间**,如图: [](https://www.malaoshi.top/upload/0/0/1GW2ZciO7gBj.png) # 自注意力机制 在自注意力(Self-Attention)机制中,**“自”** 指的是该机制通过关联 **单个输入序列** 中的 **不同位置** 来计算 **注意力权重** 的能力。 可以评估并学习输入本身各个部分之间的关系和依赖,比如句子中的单词或图像中的像素。 # 上下文向量 自注意力的输出结果就是上下文向量(Context Vector) **上下文向量 = 把“周围相关信息”综合起来后得到的一个向量。** 一句话解释:在当前位置,我综合了我能看到的所有信息后,形成的“理解结果”。 ### 为什么叫“上下文”? 因为它不是只看自己,而是看: - 前面的词 - 后面的词 - 或者根据任务规定能看到的范围 然后把这些信息“融合”成一个向量。 ### 例子 句子: ``` “猫 喜欢 鱼” ``` 当处理“喜欢”这个词时: - 只看自己(即“喜欢”这个词) → 得到“喜欢”的词向量 - 看自己(即“喜欢”这个词) + 猫 + 鱼 → 得到“喜欢”的 **上下文向量** 这个上下文向量会包含: - “喜欢”的基本含义 - 它和“猫”的关系 - 它和“鱼”的关系 - 整个短语的语义 这就是上下文向量 ### 上下文向量长什么样? 就是一个普通的向量,比如: ``` [0.23, -0.12, 0.95, 1.10, -0.37, ...] ``` 但它的含义是: > “我综合了周围信息后,对当前词的理解。” ### 上下文向量 vs 词向量 | 对比项 | 词向量 | 上下文向量 | |--------|--------|-------------| | 信息来源 | 只看自己 | 看周围所有相关词 | | 是否固定 | 固定(如 Word2Vec) | 不固定,随句子变化 | | 表达能力 | 单一含义 | 多义性可区分 | 例子: “苹果 很好吃” “苹果 公司 发布 新 手机” “苹果”的词向量是同一个,但上下文向量完全不同。 ### 总结 **上下文向量 = 把当前词和它周围相关信息融合后得到的向量,代表模型对当前词在“这个语境下”的理解。** 原文出处:http://malaoshi.top/show_1GW2awZoUzdk.html