大模型, 底层原理探究

W_Q :  我现在想问别人什么信息:

W_K: 我是谁, 可以被别人关注吗

W_V:    我提供什么信息. 

 

 

image

 

  • Q(Query):代表“我想知道什么”

  • K(Key):代表“我是谁”

  • V(Value):代表“我提供什么信息”

image

image

QK的转置

 

Q 是一个矩阵,每一行对应一个词的 Query 向量;
Kᵀ 是 Key 的转置矩阵,每一列对应一个词的 Key 向量。

于是 QKT 的结果是一个 词与词之间相似度(相关性)矩阵

 举一个例子: 

image

解释每一行的意义

每一行表示一个词,去“看”别的词时的注意力得分:

    • 第一行(“我”):
      对“我”自己最相关(0.9),对“喜欢”也有一点(0.62),对“你”几乎没关系(0.1)
      👉 “我”主要关注自己。

    • 第二行(“喜欢”):
      对“喜欢”自己 0.7,但也对“我”和“你”都关注。
      👉 “喜欢”在语义上既和主语(我)相关,也和宾语(你)相关。

    • 第三行(“你”):
      对“你”自己 0.9,但对“喜欢”也有较强关注(0.78)。
      👉 “你”关注动词“喜欢”。

      五、为什么还要 softmax

      Softmax 的作用是把这些相似度分数变成“概率权重”,方便后面加权求和。

      比如对于“喜欢”这行 [0.5, 0.7, 0.5]

      softmax(0.5,0.7,0.5)=[0.30,0.40,0.30]\text{softmax}(0.5, 0.7, 0.5) = [0.30, 0.40, 0.30]softmax(0.5,0.7,0.5)=[0.30,0.40,0.30]

      意思是:

      当模型在理解“喜欢”这个词时,
      它 40% 的注意力放在“喜欢”自己身上,
      30% 放在“我”,30% 放在“你”。

 

 

 

image

 

posted @ 2025-11-03 16:23  dousil  阅读(5)  评论(0)    收藏  举报