ID3二叉树还是非二叉树?

时间:2016-11-30 13:44:33

标签: machine-learning decision-tree

我试图实施ID3或C4.5算法。

根据ID3算法,信息增益计算如下:

enter image description here

例如:训练数据如下:

credit      age      label   
normal     young      yes
normal     old      yes
bad        old        no
excellent  middle     yes 

信用证IG应该是这样的:IG(credit) = H(D) - P(credit==normal)H(D|credit==normal) - P(credit==bad)H(D|credit==bad) - P(credit==excellent)H(D|credit==excellent)

当我选择信用证作为拆分的最佳功能时,在以下步骤中,我不会考虑属性" credit"试。

然而:我也看到有人像这样实现: IG(credit=normal) = H(D) - P(credit==normal)H(D|credit==normal) - P(credit ~= normal)H(D|credit ~= normal)

当我选择credit == normal作为拆分的最佳功能时,在下面的过程中,我将考虑属性" credit"再次,如信用=="坏"。

得到的不同IG计算结果树,一个是非二叉树,另一个是二叉树。

我的问题是两棵树是否相同?当我在两棵树上进行测试时,结果总是一样的吗?或者一个比其他更好?或者很难说哪个更好,仅仅取决于数据?

1 个答案:

答案 0 :(得分:0)

正如您所提到的,一棵树将执行多路分割其他二元分割。 2棵树绝对不是等价的,因此测试结果也不一样。但两种情况下的准确度可能在相似的范围内。建议您最后2个关于哪种型号更好的问题取决于您的数据。