测试准确率高于训练准确率怎么办?

我使用的是随机森林算法。我的测试准确率是70%,而训练准确率只有34%?该怎么办?我如何解决这个问题?


回答:

Test准确率不应高于train,因为模型是为后者优化的。导致这种情况发生的可能原因包括:

  • 你没有对测试使用相同的数据源。你应该进行适当的训练/测试分割,使两者的基础分布相同。很可能你为test提供了一个完全不同(且更容易处理)的数据集。

  • 应用了不合理的高度regularization。即便如此,也需要存在“测试数据分布与训练数据分布不同”的某种因素,才会出现这种情况。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注