如何防止Keras始终预测数据的基础分布?

时间:2017-11-06 20:18:33

标签: deep-learning keras data-science

我正在针对二进制分类问题在非常不平衡的数据集上训练深度CNN。我有90%的0%和10%的1%。为了惩罚1的错误分类,我使用的是由sklearn的compute_class_weight()确定的class_weight。在传递给fit_generator()的验证元组中,我使用的是由sklearn的compute_sample_weight()计算的sample_weight。

网络似乎学得很好,但在每个时代之后,验证准确率仍然是90%或10%。考虑到我已经采取的克服它的步骤,如何解决Keras中的数据不平衡问题?

fit_generator的图片:fit_generator()

日志输出图片:log outputs

1 个答案:

答案 0 :(得分:0)

奇怪的是,你的val_accuracy从0.9跳到0.1然后又回来了。你有正确的学习率吗?尽量降低它。

我的建议是:也使用f1指标。

你是如何拆分数据的?列车集类在测试集中具有相同的速率?