这个情况在实际项目中其实挺常见的,说白了loss也好, accuracy也好,都是很片面且脆弱的评估指标。与模型结构与数据分布都有很大关系。 具体如何选择模型应该与应用场景强相关。
考虑下面这个例子:
对于一个有4条数据的数据集,它的真实label为[0, 1, 1, 1]。
现在考虑两个不同的模型A,B。假设Model A预测的结果为: [0.5, 0.9, 0.9, 0.5], Model B预测的结果为[0.499, 0.501, 0.501, 0.501]。分别计算它们的AUC、Log Loss 与 Accuracy(阈值暂且取0.5)。
********* Model A : [0.5, 0.9, 0.9, 0.5] *********
loss: 0.39925384810888576
auc: 0.8333333333333334
accuracy: 75%
********* Model B : [0.499, 0.501, 0.501, 0.501] *********
loss: 0.6911491778972723
auc: 1.0
accuracy: 100%