Machine learning C4.5决策树算法没有提高准确性

Machine learning C4.5决策树算法没有提高准确性,machine-learning,weka,j48,c4.5,Machine Learning,Weka,J48,C4.5,我使用10倍交叉验证在Weka中运行C4.5剪枝算法。我注意到未修剪的树比修剪过的树具有更高的测试精度。我无法理解为什么剪枝树不能提高测试精度?剪枝减少了决策树的大小,这通常会降低训练精度,但会提高测试未看到数据的精度。修剪有助于减少过度拟合,在这种情况下,您可以在训练数据上获得完美的准确性,但模型(即决策树)在看到未看到的数据时就会失败 因此,修剪应该提高测试的准确性。从你的问题来看,很难说为什么修剪不能提高测试的准确性 但是,您可以检查您的训练准确性。只需检查修剪是否降低了训练精度。如果不是

我使用10倍交叉验证在Weka中运行C4.5剪枝算法。我注意到未修剪的树比修剪过的树具有更高的测试精度。我无法理解为什么剪枝树不能提高测试精度?

剪枝减少了决策树的大小,这通常会降低训练精度,但会提高测试未看到数据的精度。修剪有助于减少过度拟合,在这种情况下,您可以在训练数据上获得完美的准确性,但模型(即决策树)在看到未看到的数据时就会失败

因此,修剪应该提高测试的准确性。从你的问题来看,很难说为什么修剪不能提高测试的准确性


但是,您可以检查您的训练准确性。只需检查修剪是否降低了训练精度。如果不是,那么问题出在其他地方。然后,您可能需要考虑功能的数量或数据集的大小

谢谢!我检查过修剪会降低训练的准确性。关于如何前进有什么建议吗?是因为我的未运行的树过度拟合了数据吗?拥有更多的数据会提高上调树的性能吗?我之前对未修剪树的测试准确率约为98%,而对修剪树的测试准确率降到了97%。修剪树应该比测试数据具有更高的准确率,但由于修剪后性能没有得到改善,您可以考虑更多的训练数据。您的情况可能很少例外,但在测试实例上,经过修剪的树应该比未经过修剪的树表现得更好。