该模型是过拟合还是欠拟合?

时间:2019-09-22 12:58:09

标签: python tensorflow keras

在过度拟合的情况下,据我所知,val_loss必须飙升,而不是train_loss 但是呢?这个模型令人恐惧吗?还是完全不同的情况? 以前我的模型无法很好地拟合,所以我添加了0.3的缺失(4个具有64个神经元的CuDNNGRU层和1个Dense层且批处理大小为64个),那么我应该减少缺失吗?

train_loss vs. validation_loss

1 个答案:

答案 0 :(得分:2)

这既不适合也不适合。有些人将其称为 Unknown fit 。当您在keras中应用正则化(L1,L2,Dropout等)时,会发生验证<<训练丢失的情况,因为它们仅应用于训练,而不应用于测试(验证)。因此,您的训练损失更大是有道理的(例如,由于辍学,并非所有神经元都可用于前馈)。

但是很明显,您的模型并未针对验证集进行优化(几乎是一条直线)。这可能是由于许多原因造成的:

  • 您的验证集很难代表您的数据集,具有非常容易的预测或非常小的预测。
  • 降低学习率或添加更多正则化(因为您正在使用CuDNNGRU,所以为recurrent_regularization)
  • 您的损失函数不适用于您要解决的问题。

希望这些技巧对您有所帮助。