J48和ID3算法输出之间的WEKA差异



我有一个数据集,我正在使用J48ID3算法在WEKA中对其进行分类。J48算法的输出为:

Correctly Classified Instances          73               92.4051 %
Incorrectly Classified Instances         6                7.5949 %
Kappa statistic                          0.8958
Mean absolute error                      0.061 
Root mean squared error                  0.1746
Relative absolute error                 16.7504 %
Root relative squared error             40.9571 %
Total Number of Instances               79     

使用ID3的输出为:

Correctly Classified Instances          79              100      %
Incorrectly Classified Instances         0                0      %
Kappa statistic                          1     
Mean absolute error                      0     
Root mean squared error                  0     
Relative absolute error                  0      %
Root relative squared error              0      %
Total Number of Instances               79 

我的问题是,如果J48ID3的扩展,并且与之相比更新,那么ID3为什么会给出比J48更好的结果呢?

J48模型在过程中的质量更准确,基于C4.5是ID3的扩展,它考虑了不可用值、连续属性值范围、决策树的修剪、规则推导等。这种情况下的结果只反映了您使用的数据集的类型。当您需要更快/更简单的结果时,可以实现ID3,而无需考虑J48中考虑的所有其他因素。在这里查看修剪决策树和派生规则集在网络上有很多关于这些比较结果的主题资源,一旦我们知道每个分类器是如何工作的,就要学会识别在哪种情况下我们应用不同的分类器,这一点更为重要(1)

决策树更有可能面临数据过拟合的问题,在您的情况下,ID3算法面临数据过拟合的问题。这就是决策树的问题,它拆分数据,直到生成纯集。通过使用修剪,在其扩展程序J48中解决了数据过度拟合的问题。

需要说明的另一点是:您应该使用K-fold交叉验证来验证您的模型。

最新更新