使用数据集:
http://archive.ics.uci.edu/ml/machine-learning-databases/car/
weka-3.6.10的结果是:

safety = low: unacc (576.0)
safety = med
|   persons = 2.0: unacc (192.0)
|   persons = 4.0
|   |   buying = vhigh
|   |   |   maint = vhigh: unacc (12.0)
|   |   |   maint = high: unacc (12.0)
|   |   |   maint = med
|   |   |   |   lug_boot = small: unacc (4.0)
|   |   |   |   lug_boot = med: unacc (4.0/2.0)
|   |   |   |   lug_boot = big: acc (4.0)
|   |   |   maint = low
|   |   |   |   lug_boot = small: unacc (4.0)
|   |   |   |   lug_boot = med: unacc (4.0/2.0)
|   |   |   |   lug_boot = big: acc (4.0)
|   |   buying = high
|   |   |   lug_boot = small: unacc (16.0)
|   |   |   lug_boot = med
|   |   |   |   doors = 2.0: unacc (4.0)
|   |   |   |   doors = 3.0: unacc (4.0)
|   |   |   |   doors = 4.0: acc (4.0/1.0)
|   |   |   |   doors = 5more: acc (4.0/1.0)
|   |   |   lug_boot = big
|   |   |   |   maint = vhigh: unacc (4.0)
|   |   |   |   maint = high: acc (4.0)
|   |   |   |   maint = med: acc (4.0)
|   |   |   |   maint = low: acc (4.0)
|   |   buying = med
|   |   |   maint = vhigh
|   |   |   |   lug_boot = small: unacc (4.0)
|   |   |   |   lug_boot = med: unacc (4.0/2.0)
|   |   |   |   lug_boot = big: acc (4.0)
|   |   |   maint = high
|   |   |   |   lug_boot = small: unacc (4.0)
|   |   |   |   lug_boot = med: unacc (4.0/2.0)
|   |   |   |   lug_boot = big: acc (4.0)
|   |   |   maint = med: acc (12.0)
|   |   |   maint = low
|   |   |   |   lug_boot = small: acc (4.0)
|   |   |   |   lug_boot = med: acc (4.0/2.0)
|   |   |   |   lug_boot = big: good (4.0)
|   |   buying = low
|   |   |   maint = vhigh
|   |   |   |   lug_boot = small: unacc (4.0)
|   |   |   |   lug_boot = med: unacc (4.0/2.0)
|   |   |   |   lug_boot = big: acc (4.0)
|   |   |   maint = high: acc (12.0)
|   |   |   maint = med
|   |   |   |   lug_boot = small: acc (4.0)
|   |   |   |   lug_boot = med: acc (4.0/2.0)
|   |   |   |   lug_boot = big: good (4.0)
|   |   |   maint = low
|   |   |   |   lug_boot = small: acc (4.0)
|   |   |   |   lug_boot = med: acc (4.0/2.0)
|   |   |   |   lug_boot = big: good (4.0)
|   persons = more
|   |   lug_boot = small
|   |   |   buying = vhigh: unacc (16.0)
|   |   |   buying = high: unacc (16.0)
|   |   |   buying = med
|   |   |   |   maint = vhigh: unacc (4.0)
|   |   |   |   maint = high: unacc (4.0)
|   |   |   |   maint = med: acc (4.0/1.0)
|   |   |   |   maint = low: acc (4.0/1.0)
|   |   |   buying = low
|   |   |   |   maint = vhigh: unacc (4.0)
|   |   |   |   maint = high: acc (4.0/1.0)
|   |   |   |   maint = med: acc (4.0/1.0)
|   |   |   |   maint = low: acc (4.0/1.0)
|   |   lug_boot = med
|   |   |   buying = vhigh
|   |   |   |   maint = vhigh: unacc (4.0)
|   |   |   |   maint = high: unacc (4.0)
|   |   |   |   maint = med: acc (4.0/1.0)
|   |   |   |   maint = low: acc (4.0/1.0)
|   |   |   buying = high
|   |   |   |   maint = vhigh: unacc (4.0)
|   |   |   |   maint = high: acc (4.0/1.0)
|   |   |   |   maint = med: acc (4.0/1.0)
|   |   |   |   maint = low: acc (4.0/1.0)
|   |   |   buying = med: acc (16.0/5.0)
|   |   |   buying = low
|   |   |   |   maint = vhigh: acc (4.0/1.0)
|   |   |   |   maint = high: acc (4.0)
|   |   |   |   maint = med: good (4.0/1.0)
|   |   |   |   maint = low: good (4.0/1.0)
|   |   lug_boot = big
|   |   |   buying = vhigh
|   |   |   |   maint = vhigh: unacc (4.0)
|   |   |   |   maint = high: unacc (4.0)
|   |   |   |   maint = med: acc (4.0)
|   |   |   |   maint = low: acc (4.0)
|   |   |   buying = high
|   |   |   |   maint = vhigh: unacc (4.0)
|   |   |   |   maint = high: acc (4.0)
|   |   |   |   maint = med: acc (4.0)
|   |   |   |   maint = low: acc (4.0)
|   |   |   buying = med
|   |   |   |   maint = vhigh: acc (4.0)
|   |   |   |   maint = high: acc (4.0)
|   |   |   |   maint = med: acc (4.0)
|   |   |   |   maint = low: good (4.0)
|   |   |   buying = low
|   |   |   |   maint = vhigh: acc (4.0)
|   |   |   |   maint = high: acc (4.0)
|   |   |   |   maint = med: good (4.0)
|   |   |   |   maint = low: good (4.0)
safety = high
|   persons = 2.0: unacc (192.0)
|   persons = 4.0
|   |   buying = vhigh
|   |   |   maint = vhigh: unacc (12.0)
|   |   |   maint = high: unacc (12.0)
|   |   |   maint = med: acc (12.0)
|   |   |   maint = low: acc (12.0)
|   |   buying = high
|   |   |   maint = vhigh: unacc (12.0)
|   |   |   maint = high: acc (12.0)
|   |   |   maint = med: acc (12.0)
|   |   |   maint = low: acc (12.0)
|   |   buying = med
|   |   |   maint = vhigh: acc (12.0)
|   |   |   maint = high: acc (12.0)
|   |   |   maint = med
|   |   |   |   lug_boot = small: acc (4.0)
|   |   |   |   lug_boot = med: acc (4.0/2.0)
|   |   |   |   lug_boot = big: vgood (4.0)
|   |   |   maint = low
|   |   |   |   lug_boot = small: good (4.0)
|   |   |   |   lug_boot = med: vgood (4.0/2.0)
|   |   |   |   lug_boot = big: vgood (4.0)
|   |   buying = low
|   |   |   maint = vhigh: acc (12.0)
|   |   |   maint = high
|   |   |   |   lug_boot = small: acc (4.0)
|   |   |   |   lug_boot = med: acc (4.0/2.0)
|   |   |   |   lug_boot = big: vgood (4.0)
|   |   |   maint = med
|   |   |   |   lug_boot = small: good (4.0)
|   |   |   |   lug_boot = med: vgood (4.0/2.0)
|   |   |   |   lug_boot = big: vgood (4.0)
|   |   |   maint = low
|   |   |   |   lug_boot = small: good (4.0)
|   |   |   |   lug_boot = med: vgood (4.0/2.0)
|   |   |   |   lug_boot = big: vgood (4.0)
|   persons = more
|   |   buying = vhigh
|   |   |   maint = vhigh: unacc (12.0)
|   |   |   maint = high: unacc (12.0)
|   |   |   maint = med: acc (12.0/1.0)
|   |   |   maint = low: acc (12.0/1.0)
|   |   buying = high
|   |   |   maint = vhigh: unacc (12.0)
|   |   |   maint = high: acc (12.0/1.0)
|   |   |   maint = med: acc (12.0/1.0)
|   |   |   maint = low: acc (12.0/1.0)
|   |   buying = med
|   |   |   maint = vhigh: acc (12.0/1.0)
|   |   |   maint = high: acc (12.0/1.0)
|   |   |   maint = med
|   |   |   |   lug_boot = small: acc (4.0/1.0)
|   |   |   |   lug_boot = med: vgood (4.0/1.0)
|   |   |   |   lug_boot = big: vgood (4.0)
|   |   |   maint = low
|   |   |   |   lug_boot = small: good (4.0/1.0)
|   |   |   |   lug_boot = med: vgood (4.0/1.0)
|   |   |   |   lug_boot = big: vgood (4.0)
|   |   buying = low
|   |   |   maint = vhigh: acc (12.0/1.0)
|   |   |   maint = high
|   |   |   |   lug_boot = small: acc (4.0/1.0)
|   |   |   |   lug_boot = med: vgood (4.0/1.0)
|   |   |   |   lug_boot = big: vgood (4.0)
|   |   |   maint = med
|   |   |   |   lug_boot = small: good (4.0/1.0)
|   |   |   |   lug_boot = med: vgood (4.0/1.0)
|   |   |   |   lug_boot = big: vgood (4.0)
|   |   |   maint = low
|   |   |   |   lug_boot = small: good (4.0/1.0)
|   |   |   |   lug_boot = med: vgood (4.0/1.0)
|   |   |   |   lug_boot = big: vgood (4.0)

Ross Quinlan的C4.5-Release8的代码是:
http://www.rulequest.com/Personal/c4.5r8.tar.gz

运行结果是:

safety = low: unacc (576.0/1.4)
safety = med:
|   persons = 2: unacc (192.0/1.4)
|   persons = 4:
|   |   buying = vhigh:
|   |   |   maint = vhigh: unacc (12.0/1.3)
|   |   |   maint = high: unacc (12.0/1.3)
|   |   |   maint = med:
|   |   |   |   lug_boot = small: unacc (4.0/1.2)
|   |   |   |   lug_boot = med: unacc (4.0/3.1)
|   |   |   |   lug_boot = big: acc (4.0/1.2)
|   |   |   maint = low:
|   |   |   |   lug_boot = small: unacc (4.0/1.2)
|   |   |   |   lug_boot = med: unacc (4.0/3.1)
|   |   |   |   lug_boot = big: acc (4.0/1.2)
|   |   buying = high:
|   |   |   lug_boot = small: unacc (16.0/1.3)
|   |   |   lug_boot = med:
|   |   |   |   doors = 2: unacc (4.0/1.2)
|   |   |   |   doors = 3: unacc (4.0/1.2)
|   |   |   |   doors = 4: acc (4.0/2.2)
|   |   |   |   doors = 5more: acc (4.0/2.2)
|   |   |   lug_boot = big:
|   |   |   |   maint = vhigh: unacc (4.0/1.2)
|   |   |   |   maint = high: acc (4.0/1.2)
|   |   |   |   maint = med: acc (4.0/1.2)
|   |   |   |   maint = low: acc (4.0/1.2)
|   |   buying = med:
|   |   |   maint = med: acc (12.0/1.3)
|   |   |   maint = vhigh:
|   |   |   |   lug_boot = small: unacc (4.0/1.2)
|   |   |   |   lug_boot = med: unacc (4.0/3.1)
|   |   |   |   lug_boot = big: acc (4.0/1.2)
|   |   |   maint = high:
|   |   |   |   lug_boot = small: unacc (4.0/1.2)
|   |   |   |   lug_boot = med: unacc (4.0/3.1)
|   |   |   |   lug_boot = big: acc (4.0/1.2)
|   |   |   maint = low:
|   |   |   |   lug_boot = small: acc (4.0/1.2)
|   |   |   |   lug_boot = med: acc (4.0/3.1)
|   |   |   |   lug_boot = big: good (4.0/1.2)
|   |   buying = low:
|   |   |   maint = high: acc (12.0/1.3)
|   |   |   maint = vhigh:
|   |   |   |   lug_boot = small: unacc (4.0/1.2)
|   |   |   |   lug_boot = med: unacc (4.0/3.1)
|   |   |   |   lug_boot = big: acc (4.0/1.2)
|   |   |   maint = med:
|   |   |   |   lug_boot = small: acc (4.0/1.2)
|   |   |   |   lug_boot = med: acc (4.0/3.1)
|   |   |   |   lug_boot = big: good (4.0/1.2)
|   |   |   maint = low:
|   |   |   |   lug_boot = small: acc (4.0/1.2)
|   |   |   |   lug_boot = med: acc (4.0/3.1)
|   |   |   |   lug_boot = big: good (4.0/1.2)
|   persons = more:
|   |   lug_boot = small:
|   |   |   buying = vhigh: unacc (16.0/1.3)
|   |   |   buying = high: unacc (16.0/1.3)
|   |   |   buying = med:
|   |   |   |   maint = vhigh: unacc (4.0/1.2)
|   |   |   |   maint = high: unacc (4.0/1.2)
|   |   |   |   maint = med: acc (4.0/2.2)
|   |   |   |   maint = low: acc (4.0/2.2)
|   |   |   buying = low:
|   |   |   |   maint = vhigh: unacc (4.0/1.2)
|   |   |   |   maint = high: acc (4.0/2.2)
|   |   |   |   maint = med: acc (4.0/2.2)
|   |   |   |   maint = low: acc (4.0/2.2)
|   |   lug_boot = med:
|   |   |   buying = med: acc (16.0/6.9)
|   |   |   buying = vhigh:
|   |   |   |   maint = vhigh: unacc (4.0/1.2)
|   |   |   |   maint = high: unacc (4.0/1.2)
|   |   |   |   maint = med: acc (4.0/2.2)
|   |   |   |   maint = low: acc (4.0/2.2)
|   |   |   buying = high:
|   |   |   |   maint = vhigh: unacc (4.0/1.2)
|   |   |   |   maint = high: acc (4.0/2.2)
|   |   |   |   maint = med: acc (4.0/2.2)
|   |   |   |   maint = low: acc (4.0/2.2)
|   |   |   buying = low:
|   |   |   |   maint = vhigh: acc (4.0/2.2)
|   |   |   |   maint = high: acc (4.0/1.2)
|   |   |   |   maint = med: good (4.0/2.2)
|   |   |   |   maint = low: good (4.0/2.2)
|   |   lug_boot = big:
|   |   |   buying = vhigh:
|   |   |   |   maint = vhigh: unacc (4.0/1.2)
|   |   |   |   maint = high: unacc (4.0/1.2)
|   |   |   |   maint = med: acc (4.0/1.2)
|   |   |   |   maint = low: acc (4.0/1.2)
|   |   |   buying = high:
|   |   |   |   maint = vhigh: unacc (4.0/1.2)
|   |   |   |   maint = high: acc (4.0/1.2)
|   |   |   |   maint = med: acc (4.0/1.2)
|   |   |   |   maint = low: acc (4.0/1.2)
|   |   |   buying = med:
|   |   |   |   maint = vhigh: acc (4.0/1.2)
|   |   |   |   maint = high: acc (4.0/1.2)
|   |   |   |   maint = med: acc (4.0/1.2)
|   |   |   |   maint = low: good (4.0/1.2)
|   |   |   buying = low:
|   |   |   |   maint = vhigh: acc (4.0/1.2)
|   |   |   |   maint = high: acc (4.0/1.2)
|   |   |   |   maint = med: good (4.0/1.2)
|   |   |   |   maint = low: good (4.0/1.2)
safety = high:
|   persons = 2: unacc (192.0/1.4)
|   persons = 4:
|   |   buying = vhigh:
|   |   |   maint = vhigh: unacc (12.0/1.3)
|   |   |   maint = high: unacc (12.0/1.3)
|   |   |   maint = med: acc (12.0/1.3)
|   |   |   maint = low: acc (12.0/1.3)
|   |   buying = high:
|   |   |   maint = vhigh: unacc (12.0/1.3)
|   |   |   maint = high: acc (12.0/1.3)
|   |   |   maint = med: acc (12.0/1.3)
|   |   |   maint = low: acc (12.0/1.3)
|   |   buying = med:
|   |   |   maint = vhigh: acc (12.0/1.3)
|   |   |   maint = high: acc (12.0/1.3)
|   |   |   maint = med:
|   |   |   |   lug_boot = small: acc (4.0/1.2)
|   |   |   |   lug_boot = med: acc (4.0/3.1)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)
|   |   |   maint = low:
|   |   |   |   lug_boot = small: good (4.0/1.2)
|   |   |   |   lug_boot = med: good (4.0/3.1)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)
|   |   buying = low:
|   |   |   maint = vhigh: acc (12.0/1.3)
|   |   |   maint = high:
|   |   |   |   lug_boot = small: acc (4.0/1.2)
|   |   |   |   lug_boot = med: acc (4.0/3.1)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)
|   |   |   maint = med:
|   |   |   |   lug_boot = small: good (4.0/1.2)
|   |   |   |   lug_boot = med: good (4.0/3.1)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)
|   |   |   maint = low:
|   |   |   |   lug_boot = small: good (4.0/1.2)
|   |   |   |   lug_boot = med: good (4.0/3.1)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)
|   persons = more:
|   |   buying = vhigh:
|   |   |   maint = vhigh: unacc (12.0/1.3)
|   |   |   maint = high: unacc (12.0/1.3)
|   |   |   maint = med: acc (12.0/2.5)
|   |   |   maint = low: acc (12.0/2.5)
|   |   buying = high:
|   |   |   maint = vhigh: unacc (12.0/1.3)
|   |   |   maint = high: acc (12.0/2.5)
|   |   |   maint = med: acc (12.0/2.5)
|   |   |   maint = low: acc (12.0/2.5)
|   |   buying = med:
|   |   |   maint = vhigh: acc (12.0/2.5)
|   |   |   maint = high: acc (12.0/2.5)
|   |   |   maint = med:
|   |   |   |   lug_boot = small: acc (4.0/2.2)
|   |   |   |   lug_boot = med: vgood (4.0/2.2)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)
|   |   |   maint = low:
|   |   |   |   lug_boot = small: good (4.0/2.2)
|   |   |   |   lug_boot = med: vgood (4.0/2.2)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)
|   |   buying = low:
|   |   |   maint = vhigh: acc (12.0/2.5)
|   |   |   maint = high:
|   |   |   |   lug_boot = small: acc (4.0/2.2)
|   |   |   |   lug_boot = med: vgood (4.0/2.2)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)
|   |   |   maint = med:
|   |   |   |   lug_boot = small: good (4.0/2.2)
|   |   |   |   lug_boot = med: vgood (4.0/2.2)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)
|   |   |   maint = low:
|   |   |   |   lug_boot = small: good (4.0/2.2)
|   |   |   |   lug_boot = med: vgood (4.0/2.2)
|   |   |   |   lug_boot = big: vgood (4.0/1.2)

比较两者的不同,可以看到weka没有采用Quinlan的书《C4.5:programs for machine learning》对unKnown数据的处理方式。
另外我们也可以得知,虽然《C4.5:programs for machine learning》提到的剪枝方式是EBP,但是代码中其实使用的是PERP,weka使用的也是PERP(Pessimistirc Error Pruning)

注意,如果使用http://www.rulequest.com/Personal/c4.5r8.tar.gz中自带的hypo数据集,那么weka就能看出比Quinlan实现的差一些。
因为Quinlan实现的版本生成的决策树更加简化,更加适合提取知识。

Weka的-3.6.10的C4.5与Quinlan教授的C4.5算法的区别相关推荐

  1. c4.5决策树算法python_Python3实现机器学习经典算法(四)C4.5决策树

    一.C4.5决策树概述 C4.5决策树是ID3决策树的改进算法,它解决了ID3决策树无法处理连续型数据的问题以及ID3决策树在使用信息增益划分数据集的时候倾向于选择属性分支更多的属性的问题.它的大部分 ...

  2. 循环队列,定义循环队列长度为10,编写初始化队列、入队、出队、求队长,实现10,20,30,40,50,60,70,80入队,10,20,30出队,56,67入队的算法功能。

    循环队列,定义循环队列长度为10,编写初始化队列.入队.出队.求队长,实现10,20,30,40,50,60,70,80入队,10,20,30出队,56,67入队的算法功能. #include< ...

  3. 安卓10和android区别,华为8月9日发布安卓10.0系统 华为EMUI 10.0功能及适配机型 华为安卓系统和鸿蒙OS区别...

    华为8月9日发布安卓10.0系统 华为EMUI 10.0功能及适配机型 华为安卓系统和鸿蒙OS区别 根据最新消息显示,华为终端官方再次给出消息称,在8月9日华为开发者大会首天,他们将发布新一代基于An ...

  4. 10 号发工资和 20 号发工资的公司,区别竟然这么大?

    来源 | 南京本地宝 工资的话题 一直占据着职场热度榜单 这不 最近又热起来了 10号发工资和20号发工资, 就能看出一个公司是否靠谱? 对很多工薪族来说 发工资这一天 是脱贫致富的重要日子 也是很多 ...

  5. 干货|10 张 GIF 动图让你弄懂基础算法必备概念

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 来源:编程派 今天为大家整理了十张动图GIFS,有助于认识循环.递归.二分检索等概念的 ...

  6. 10.24T3 解方程 取模意义下运算+秦九韶算法

    #1228 解方程 描述 已知多项式方程: a0+a1x+a2x^2+..+anx^n=0 求这个方程在[1, m ] 内的整数解(n 和m 均为正整数) 输入 输入共n + 2 行. 第一行包含2 ...

  7. C++统计10亿以内所有的质素(素数)的实现算法(附完整源码)

    C++统计10亿以内所有的质素的实现算法 C++统计10亿以内所有的质素的实现算法完整源码(定义,实现,main函数测试) C++统计10亿以内所有的质素的实现算法完整源码(定义,实现,main函数测 ...

  8. python c4.5完整代码_python实现c4.5/Id3自我练习

    import numpy as np class DecisionTree: """决策树使用方法: - 生成实例: clf = DecisionTrees(). 参数m ...

  9. 10号前发工资和15号后发工资有啥区别

    10号前发工资:大都是高大上的好公司,比如高科技公司.上市公司.外资公司.事业单位. 10-15号发工资:多为制度比较健全的公司,可能规模没有第一类公司大. 15号之后发工资:多为中小企业,目的是缓解 ...

最新文章

  1. 核磁共振影像数据处理-1(上)-个人简介和系列内容介绍、Li‘s have a solution and plan.
  2. 医院电脑瘫痪 病人排长队苦等5小时
  3. 修改ie9默认的quirk模式
  4. 以不同的维度去看待问题
  5. 机器人学习--双目视觉测距
  6. 【LeetCode笔记】剑指Offer 41. 数据流中的中位数(Java、堆、优先队列、知识点)
  7. Dubbo面试 - dubbo 负载均衡策略和集群容错策略都有哪些?
  8. loadrunner ftp linux,loadrunner ftp协议使用详细步骤
  9. 小米盒子显示连接服务器失败,小米盒子连接AirPlay失败的解决方法
  10. 打印机连接计算机用什么端口,如何设置打印机端口,打印机端口设置的方法步骤...
  11. vs按f5没反应_【Euro 02:30沙萨基VS莫斯科中央陆军】
  12. 选第二大算法(锦标赛算法)
  13. 服务器脱机18个文档正在打印,打印机提示脱机打印的解决方案.docx
  14. Android获取本机号码闪退,手机号码是移动的,现在手机已经停机,想充话费却不知道本机号码,肿么查询本机号码?()...
  15. 阿里云服务器部署项目邮箱发送功能465端口报错
  16. oppo官解root,OPPO官解工具
  17. postman使用教程1
  18. Python线程和进程的了解,多线程多进程
  19. 拦截器和过滤器的同异
  20. Swift QQ授权登录 坑集

热门文章

  1. 深入探究VC —— 链接器link.exe(4)【转】http://blog.csdn.net/wangningyu/article/details/4849452...
  2. 【个人感悟】效率,天道酬勤
  3. URAL 1033 Labyrinth
  4. FckEditor2.6.4在VS2005中的使用过程
  5. [导入]javascript身份证号码验证函数支持带x
  6. html和css知识,html和 css基础知识
  7. React Native Android端多环境自动打包
  8. www服务器把信息组织成,管理信息系统第4章习题.doc
  9. access vba表字段_vba中如何在access的一张表中得到所有的列名?
  10. lstm 文本纠错_工业界纠错系统