← 返回题目列表

神经网络为什么可能过度自信?如何做校准?

中等 第 23 / 25 题 更新于 2026/09/19
深度学习机器学习面试题模型训练

简化版

神经网络校准要求预测置信度与真实发生频率一致,例如所有 0.8 置信度样本约有 80% 正确。可用可靠性图、NLL、Brier/ECE 评估,并在独立校准集上用 temperature scaling 等方法校准。

详细版

  • 准确率与校准是独立维度,高准确模型仍可过度自信。

  • temperature scaling 用单个 T 缩放 logits,通常保持类别排序和准确率。

  • ECE 受分桶数与样本量影响,不能单独作为真值。

  • 分布漂移会使离线温度失效,需要按时间和业务切片监控。

  • 校准集不能与基础模型训练集或最终测试集混用。

完整版教学

一、置信度需要对应可验证的频率语义

softmax 会把最大 logit 转成看似规范的概率,但交叉熵训练的深网常继续放大 logit 间隔,造成过度自信。

温度 T>1 压平分布,T<1 变尖。

优化校准集 NLL 可找到 T,而预测 argmax 不变,因为所有 logit 同除一个正数。

二、底层机制与公式

p_k(T) = exp(z_k/T) / sum_j exp(z_j/T)
Brier = mean(sum_k (p_k-1[y=k])^2)

三、带数字的推演

logits [4,2,0] 在 T=1 时 softmax 约 [0.867,0.117,0.016];T=2 后约 [0.665,0.245,0.090],类别仍为第 1 类,但置信度下降。

四、方案对比

方案/对象核心特点代价或边界
Temperature scaling单参数、保持排序只能修正整体锐度
Platt/向量缩放表达更强过拟合风险更高
Isotonic非参数单调映射需要更多校准数据

五、执行流程

训练基础模型 -> 冻结权重 -> 校准集拟合 T
-> 测试集画 reliability diagram -> 报 NLL/Brier/ECE -> 分切片上线监控

六、边界条件与工程代价

多分类总体 ECE 可能掩盖某一类别严重失准,需看 classwise calibration;样本少的置信度桶还应报告数量或置信区间。

标签平滑、Mixup 和 focal loss 都会改变 logit 与置信度,不能凭“更不自信”断言更校准,必须在独立数据测量。

记忆钩子:回答校准先说“0.8 是否真有八成正确”,再区分排序、准确率与概率质量。

七、常见误区与追问

  • 误区:softmax 输出天然就是可信概率。 归一化只保证和为 1,不保证频率校准。

  • 追问:T 为什么不改变准确率? 正温度缩放保持 logits 的大小排序。

  • 误区:ECE 越低一定越好。 结果依赖分桶且可能牺牲区分能力,应联合 NLL/Brier。

  • 追问:校准器在哪个数据集拟合? 未参与基础模型训练的独立校准集。

  • 追问:上线后为何会失效? 类别先验与条件分布漂移会改变置信度—频率关系。

八、加强记忆

回答校准先说“0.8 是否真有八成正确”,再区分排序、准确率与概率质量。

温度只调锐度,验收靠独立数据和可靠性图。