核心要点

  • 能写出 p_i = exp(z_i)/Σ exp(z_j),输出落在 (0,1) 且和为 1,是 logits 到概率分布的映射

  • 数值稳定:计算前对 logits 减去 max(z),结果不变但避免 exp 溢出

  • 温度缩放 p_i = exp(z_i/T)/Σ exp(z_j/T):T<1 分布更尖(更确定,趋近 argmax),T>1 更平(更随机)

  • 平移不变(整体加常数不改变输出),但不是尺度不变,这正是温度起作用的原因

简要回答

Softmax 把任意实数向量变成概率分布;除温度 T 后,T→0 接近 argmax,T 大则分布更平,用于控制生成随机性。

标准回答

Softmax:p_i = exp(z_i) / Σ exp(z_j),输出 (0,1) 且和为 1。用途:分类输出层;Attention 权重归一化数值稳定:减 max(z) 防 overflow。温度:p_i = exp(z_i/T) / Σ exp(z_j/T)。T<1分布更尖(更确定);T>1更平(更随机)。LLM 采样时 temperature + top-p/top-k 共同控制创造性。训练时用交叉熵损失,等价于最大似然。

常见误区

⚠️ 常见踩坑

把 Softmax 输出的概率当作模型「置信度」的真实校准值——神经网络常过度自信,需温度缩放等方法校准。另一误区:忘记数值稳定处理,直接对大 logits 求 exp 导致溢出/NaN;以及误以为温度 T 在训练时也要调,实际上 T 主要用于推理采样阶段,T→0 时退化为确定性 argmax。

追问

追问 1Softmax 和 Sigmoid 关系?

Sigmoid 把标量压到 (0,1),二分类输出或多标签独立概率;Softmax 对向量归一化为和为 1 的分布,多分类互斥。二分类时 Softmax(2 维) 与 Sigmoid 等价(差一个常数平移)。

追问 2top-p 采样原理?

按概率从高到低累加,直到累计概率 ≥ p,只在该核内重新归一化后采样。动态截断低概率尾,比固定 top-k 更适应分布形态,平衡多样性与连贯性。

延伸学习

与本题相关的知识库文章、术语、工具与行业资讯。