● 专题 · Deep Dive
Logit 函数:从概率回到分数
"logit" 这个名字不是凭空起的。了解一下它在统计学里的原始含义,以及为什么神经网络也用这个词。
名字的由来:统计学中的 logit function
在神经网络火起来之前,logit 是统计学里的术语,定义为 概率 p 的对数几率:
它把 [0, 1] 区间的概率映射到 的实数轴上:
p = 0.5→logit = 0(中立)p = 0.9→logit ≈ 2.2(倾向"是")p = 0.1→logit ≈ -2.2(倾向"否")
这就是逻辑回归中"链接函数"的角色—— 把无界的线性预测值和有界的概率联系起来。
神经网络里的 logit
到了神经网络时代,logit 这个名字被借用来指代"分类层最后一步、还没过 softmax 的原始输出"。 它和统计学的 logit 不完全是同一个东西,但精神相通:
- 都是未归一化的实数(可正可负)
- 都可以通过一个函数(softmax 或 sigmoid)映射回概率
- 二者通过 softmax 形成的概率分布,差异由 logit 之间的相对大小决定(绝对值不重要)
为什么模型不直接输出概率?
三个工程原因:
- 训练稳定:logit 是无界实数,神经网络做加减乘除天然友好;概率被夹在 [0,1],更容易梯度消失
- 损失函数耦合:交叉熵损失通常和 softmax 合并成一个数值稳定的算子,直接吃 logit 比拆开两步更快、更稳
- 采样灵活:保留 logit 才能后期用 temperature、top-k、top-p 等技巧调控分布形状; 如果模型直接吐概率,这些就做不了
验证一下:logit ↔ 概率 的双向变换
python
🔒 登录后可在浏览器里直接运行 Python 代码(基于 Pyodide)。