知识全景图/ 软件工程与系统/ 人工智能全景图/ Logits、Softmax 与概率输出

Logits、Softmax 与概率输出底层图谱

从 hidden state、LM head、vocab logits、softmax、logprob、cross entropy 到 token 概率,理解模型“打分”怎样变成训练损失和生成候选

阅读定位: 这一页补 AI 底层理解线里的“输出头与概率输出层”。它承接 Tokenizer / 词表Token / Attention / Transformer张量 / 自动微分,解释模型内部向量怎样映射成词表上每个 token 的分数。 它不替代 概率 / 熵 / 校准,后者讨论可靠性与风险阈值;也不替代 解码 / 采样,后者讨论怎样从分布里选择 token 并组织输出。
一、从隐藏状态到词表分数
Token IDs
词表坐标
Transformer
上下文表示
Hidden State
[batch, seq, hidden]
LM Head
hidden → vocab
Logits
[batch, seq, vocab]
Probability
softmax / logprob
对象它是什么典型 shape工程直觉
Hidden stateTransformer 每个位置最后得到的上下文向量[batch, seq, hidden]它不是词,也不是答案,而是当前位置对上下文的内部表示
LM head把 hidden 维度投影到 vocab 维度的输出层[hidden, vocab]每个 token 都会得到一个分数;词表越大,输出维度越大
Logitssoftmax 之前的原始分数[batch, seq, vocab]只能比较相对大小,还不能当作概率直接读
Vocabulary axis所有候选 token 的离散坐标vocab_sizetokenizer 决定候选集合;禁词、bias、schema 约束都要落到 token 级
Selected position通常用最后一个位置预测下一个 token[batch, vocab]聊天模型不是一次生成整段,而是每一步预测下一个 token
一句话:

语言模型最后并不是直接吐出文字,而是在词表坐标上给每个候选 token 打分;文字输出来自后续的概率归一化、采样和解码循环。

二、Logits:原始分数不是概率
特性含义为什么重要常见误解
相对性logits 的绝对值不如差值重要第一名和第二名差距能反映候选竞争程度把一个 logit 数字单独当置信度
可平移所有 logits 同加一个常数,softmax 后概率不变数值实现会先减最大值,避免指数溢出以为 logits 必须落在固定范围
未归一化还没有变成总和为 1 的分布需要 softmax 或 log-softmax 才能得到概率 / logprob直接把 logit 当百分比
可被调制temperature、logit bias、mask、约束解码会改动它产品参数和安全策略常常在 logits 层生效以为 prompt 是唯一控制手段
词表依赖每个分数对应一个具体 token id同一字符串可能拆成多个 token,控制必须对齐 tokenizer把“词”的控制误认为 token 控制

为什么输出层经常和 embedding 共享权重

很多语言模型会把输入 embedding 矩阵和输出 LM head 绑定或共享。直觉上,输入端把 token id 映射成向量,输出端则把隐藏向量投回 token 空间。这能减少参数量,也让输入输出共享同一个词表坐标系。

三、Softmax:把分数归一化成分布
步骤发生什么要抓住的直觉工程风险
指数化把每个 logit 变成正数权重差距会被指数放大,最高分候选更突出大数指数可能溢出,需要数值稳定技巧
归一化除以所有候选权重之和所有 token 概率加起来等于 1概率会随候选集合和 mask 改变
温度缩放softmax 前把 logits 除以 temperature低温让分布更尖,高温让分布更平低温不保证正确,高温不等于创造力
log-softmax直接得到 logprob训练和评测常用 log 概率,数值更稳定不要先 softmax 再取 log 做低精度训练
温度低
分布更尖,top token 更容易被选中。适合格式严格、事实型、工具参数等稳定性优先场景,但不能修复缺证据或模型不知道的问题。
温度高
分布更平,低概率候选有更多机会出现。适合开放写作和探索,但会增加跑题、格式破坏和事实错误的概率。
温度为 0 的产品含义
通常表示走近似 greedy / deterministic 路径,而不是数学上的 softmax temperature 等于 0。不同服务实现可能有细节差异。
四、Logprob、NLL 与 Cross Entropy
概念它回答什么训练 / 评测中怎么用注意点
Probability某个 token 在当前上下文下被选中的概率解码、top tokens、候选比较单 token 概率不等于整段答案正确
Logprob概率取对数后的分数累加序列分数、比较候选、计算困惑度长度越长,logprob 累加通常越小,需要长度归一化
NLL真实下一个 token 的负 logprob模型越不认为真实 token 该出现,NLL 越大标签对齐、mask、padding 错了会污染损失
Cross Entropy模型分布和目标分布之间的差距next-token prediction 的核心 loss常和 log-softmax 融合实现,避免数值不稳定
Perplexity模型对序列平均有多“困惑”语言建模评估和数据分布比较不能直接等同于任务质量、事实性或用户满意度

训练时到底在优化什么

最常见的语言模型训练目标是:给定前面的 token,最大化真实下一个 token 的 logprob。换成 loss 说法,就是最小化真实 token 的 negative log likelihood / cross entropy。模型不是被直接教“真理”,而是被训练成在上下文条件下预测训练分布里的下一个 token。

五、Token 概率与序列概率
层级怎么算能说明什么不能说明什么
单 token 概率当前上下文下某个 token 的 softmax 概率下一步候选的局部偏好不能保证整句事实正确
序列 logprob逐 token logprob 相加整段文本在模型分布下是否顺不能直接比较不同长度、不同任务的答案质量
平均 logprob序列 logprob 按 token 数归一减少长度偏置,适合候选重排仍然不等于业务正确性
Top tokens观察概率最高的若干候选能看出模型在几个词之间犹豫什么只看 top-1 会漏掉分布形状和不确定性
Margin / entropy比较第一名差距或分布分散程度可作为不确定性、路由和拒答信号之一低熵也可能是稳定地错
最大坑:

高概率表示“在当前上下文和训练分布下更像下一步”,不表示“外部世界里一定为真”。事实性、权限、引用、工具执行和业务后果必须另接校验层。

六、输出概率怎样接到工程控制
解码与采样
temperature、top-k、top-p、beam search 和停止条件都建立在 logits / probability 之上,决定下一步选哪个 token。
结构化输出
JSON、函数参数、枚举值和 DSL 都要落回 token 序列;schema 或约束解码本质上是在候选 token 空间里收窄合法路径。
分类与路由
当输出空间很小且标签 token 稳定时,可以用候选 logprob 做分类、意图识别或模型路由,但要做校准和回归测试。
风险与拒答
top token margin、entropy、自一致性和 logprob 可作为风险信号,但不能单独决定高风险业务是否放行。
训练与微调
cross entropy、label mask、assistant-only loss、packing 和 padding 都会改变哪些 token 参与学习。
评测与观测
logprob、困惑度、候选分布和异常高置信错误可进入离线评测与线上 trace,帮助定位模型为什么这样答。
6.1 Logits / Probability 证据包:从候选分布到工程控制信号
证据节点必须记录的字段用来判断什么
候选分布generation_id、step_index、top_tokens、top_logprobs、entropy模型是在多个候选间犹豫,还是高置信地产生错误 token?
控制参数temperature、top_p、top_k、logit_bias、repetition_penalty输出变化来自模型能力、上下文变化,还是采样参数和 bias?
结构约束schema_id、allowed_token_set、blocked_token_set、constraint_violationJSON、工具参数、枚举和 DSL 为什么解析失败或被约束解码卡住?
风险信号confidence_margin、refusal_token_score、unsafe_token_score、calibration_bucketlogprob 能否作为风险线索,哪些场景必须交给外部校验或人工门?
输出血缘hidden_state_snapshot_id、decoder_step_id、finish_reason、trace_id最终文本里的某个 token 能否追溯到当时的分布和控制决策?
七、常见错误与排查入口
症状优先怀疑先检查什么继续下钻
模型输出总是偏某个词logit bias、模板诱导、数据偏置或温度过低top tokens、原始 prompt、生成参数、tokenizer 切分解码 / 采样
分类 logprob 看起来不稳定标签词被切成多个 token,或候选词不等价每个标签的 token ids、长度归一、label verbalizerTokenizer / 词表
训练 loss 异常高label shift、mask、padding 或 vocab 对不齐input_ids / labels 对齐、ignore_index、特殊 token优化器 / Loss
低温仍然幻觉模型缺知识、上下文缺证据或问题前提错误检索证据、引用一致性、不可回答样本能力边界 / 幻觉
结构化输出偶发非法自然语言采样没有被严格约束schema、约束解码、解析失败重试、stop sequenceTool Calling
八、常见误区
误区:logits 越大模型越确信
logits 要看相对差距和归一化后的分布,单个原始分数没有稳定可比的置信含义。
误区:softmax 概率就是事实概率
softmax 概率是模型条件分布里的 token 概率,不是外部世界命题为真的概率。
误区:只要看 top-1 就够了
top-1 丢掉了候选差距、熵、备选路径和不确定性,很多调试信息都在 top tokens 里。
误区:cross entropy 低就代表产品好
语言建模 loss 只是基础目标;产品还要看事实性、安全、工具执行、延迟、成本和用户任务成功。
九、回到 AI 主干
AI 全景 Tokenizer / 词表 Transformer Logits / Softmax 概率 / 熵 / 校准 解码 / 采样 模型评测 / Eval Tool Calling

这张图在主线里的位置

Tokenizer 定义 token 坐标,Transformer 生成上下文向量,LM head 把向量投回词表 logits,softmax / logprob 把分数变成训练损失和候选分布。再往后,概率校准页讨论这些信号能不能支撑可信决策,解码页讨论怎样选择 token,评测页讨论最终输出在任务上是否真的可用。