训练神经网络以获得平衡的准确性

数据挖掘 机器学习 神经网络 喀拉斯 损失函数
2022-03-04 21:32:09

我正在尝试使用 NN(准确地说是 CNN)来预测严重不平衡数据上的标签,即某些类比其他类大得多。我想优化平衡精度。因此,我将类权重赋予我这样计算的模型:

classes = np.unique(y_ord)
class_weight = compute_class_weight('balanced', classes=classes, y=y_ord)
class_weight = {k: v for k, v in zip(classes, class_weight)}  # make class_weight a dict

sparse_categorical_crossentropy现在,我使用作为损失来训练我的模型。然而,虽然损失减少,但准确性并没有提高。我已经在几篇博客文章中阅读了(可能的)原因:损失是连续的,而准确度是 0 或 1。但是,我未能找到解决此问题的方法。当我不使用权重时不会发生这种情况,所以我想这一定与这些有关。

先感谢您!

0个回答
没有发现任何回复~