【深度学习】logits和probs

简单的理解就是,logits和probs的区别:

  • logits就是没有经过softmax的输出,模型最后一层输出的、还没归一化的“原始打分”。
  • probs是logits经过softmax的输出,经过temperature和softmax(归一化)后的“概率分布”。

temperature和softmax:

  • temperature 的本质:就是把 logits 除以 T 再做 softmax。T 小 → 分布更尖(更确定);T 大 → 更平(更随机)。
  • softmax 层:
    • 步骤:1. 将神经网络的输出映射为一个维度和词汇表大小相同的向量,输出logits;2. 调用softmax方法将 logits 转化为加和为1的概率,输出probs。
    • PS:如果所有 logits 同时加一个常数,softmax 结果不变。所以重要的是相对分数,不是绝对大小。

一个请求的生命周期:

请求到达
  │
  ├─ ① 排队:GPU 正忙着处理别人的 prefill/decode
  │
  ├─ ② Prefill:整个 prompt 的所有 token 并行过一遍所有层
  │      ├─ 副产品:每个位置的 K/V 向量存入 KV cache
  │      └─ 最后位置 → logits → 采样出 token#1 ──→ 返回给用户
  │                                                  ↑ TTFT 在这里截止
  └─ ③ Decode 循环(每步产出 1 个 token):
        第1步:吃进 token#1 → 产出 token#2
        第2步:吃进 token#2 → 产出 token#3
        …直到 EOS / max tokens
最后位置的隐状态 h(d_model 维,如 7168)
        ↓  × LM head 矩阵(vocab_size × d_model)
logits:词表里每个 token 一个原始分数(可正可负、未归一化)
        ↓  softmax(可先做温度缩放)
概率分布 probs
        ↓  采样(greedy / top-k / top-p)
选出下一个 token

参考:https://blog.csdn.net/wwyy2018/article/details/100081457

posted @ 2026-10-19 09:53  山上有只羊  阅读(6)  评论(0)    收藏  举报