1 min read

校准:Socrates Loss通过未知类统一分类与校准

摘要:深度神经网络虽然准确率高,但预测置信度与实际概率往往不一致。Socrates Loss通过引入未知类和动态不确定性惩罚,将分类和置信度校准统一到单一优化目标中,在训练早期提供更好的校准性能,同时保持分类准确率。

问题背景:深度神经网络的校准挑战

深度神经网络在图像识别、自然语言处理等任务中取得了显著进展,但预测置信度与实际概率之间存在系统性偏差。例如,模型预测某样本的置信度为90%,但实际正确率只有70%,这种过度自信或欠自信的问题在自动驾驶、金融风控等高风险应用中可能导致严重后果。

现有的校准方法主要分为两类:后校准方法(如温度缩放)和ad-hoc校准方法。后校准方法需要额外的训练后处理,增加了计算开销;ad-hoc校准方法在训练过程中优化损失函数,但往往需要权衡分类准确率与校准性能。

核心创新:未知类与动态不确定性惩罚

Socrates Loss的核心思想是在模型输出层引入一个额外的未知类(unknown class),通过动态不确定性惩罚来调整模型对不同置信度样本的学习权重。

未知类的作用:当模型对某个样本的置信度较低时,可以将其归类为未知类,表示模型对自己的预测不确定。这种机制类似于选择性分类中的放弃机制,允许模型在面对不确定性样本时保持谨慎。

动态不确定性惩罚:损失函数中包含一个与未知类预测概率相关的项,当模型对未知类的预测概率较高时,会受到惩罚。这种惩罚机制迫使模型在训练过程中关注低置信度样本的校准,而不是仅仅关注容易分类的样本。

公式构造

Socrates Loss的损失函数可以表示为:

L_Socrates = L_CE + λ · L_unk

其中,L_CE是标准的交叉熵损失,L_unk是与未知类预测概率相关的动态不确定性惩罚项,λ是平衡系数。

动态不确定性惩罚项的具体形式为:

L_unk = Σ_i β(x_i) · p_unk(x_i)

其中,x_i是第i个样本,β(x_i)是动态加权因子,p_unk(x_i)是模型对未知类的预测概率。

动态加权因子β(x)使用分段累积分布函数近似:

β(x) = σ(α · (g(x) - τ))

其中,σ是sigmoid函数,g(x)是置信度评分函数(如最大softmax概率),τ是阈值参数,α是斜率参数。

这个公式的关键在于:当置信度评分g(x)低于阈值τ时,sigmoid函数的输出接近0,β(x)较小;当置信度评分g(x)高于阈值τ时,sigmoid函数的输出接近1,β(x)较大。这意味着模型对高置信度样本的未知类预测会受到更大惩罚,从而抑制过度自信。

实验结果

论文在四个基准数据集上评估了Socrates Loss:Street View House Number(SVHN)、CIFAR-10、CIFAR-100和Food101。结果表明:

在训练早期(<=100 epochs),Socrates Loss在保持分类准确率的同时,显著改善了期望校准误差(ECE),相比SAT等基线方法。

在完整训练周期中,Socrates Loss在校准性能上与温度缩放等后校准方法相当,但避免了额外的计算开销。

在分类准确率方面,Socrates Loss与交叉熵损失相当,不会因为关注校准而显著降低分类性能。

实践启示

适用于以下场景:

需要同时优化分类准确率和置信度校准的应用:金融风控、自动驾驶、医疗诊断等高风险场景。

训练资源有限,无法承担后校准计算开销的场景。

模型在训练早期就需要良好校准性能的场景。

参考文献

Gómez-Gálvez, S., Olenyi, T., Dobbie, G., & Taškova, K. (2026). Socrates Loss: Unifying confidence calibration and classification by leveraging the unknown. Transactions on Machine Learning Research. arXiv:2604.12245. https://arxiv.org/abs/2604.12245