问:为什么Keras训练模型得到的训练误差比测试误差高很多?

Posted 静待花开s0

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了问:为什么Keras训练模型得到的训练误差比测试误差高很多?相关的知识,希望对你有一定的参考价值。

Keras 模型有两种模式:训练和测试。

而正则化机制,如 Dropout 和 L1/L2 权重正则化,在测试时是关闭的。

此外,训练误差是每批训练数据的平均误差。由于你的模型是随着时间而变化的,一个 epoch 中的第一批数据的误差通常比最后一批的要高。另一方面,测试误差是模型在一个 epoch 训练完后计算的,因而误差较小。

以上是关于问:为什么Keras训练模型得到的训练误差比测试误差高很多?的主要内容,如果未能解决你的问题,请参考以下文章

使用 BP 神经网络进行深度学习时在训练时获得平坦的误差曲线

模型评估与模型选择

Keras学习手册,FAQ 常见问题解答

Keras训练神经网络进行分类并进行交叉验证(Cross Validation)

keras训练完模型,为啥对训练集进行evaluate和训练时的loss完全不一样?白训练了吗?

如何测试使用教师强制训练的模型