决策树
考虑以下的二类训练样本集
Instance | A | B | Class Label |
1 | T | F | + |
2 | T | T | + |
3 | T | T | + |
4 | T | F | - |
5 | T | T | + |
6 | F | F | - |
7 | F | F | - |
8 | F | F | - |
9 | T | T | - |
10 | T | F | - |
(1)计算以属性A或B为划分的信息熵(Entropy)增益,并说明决策树学习算法选择哪个属性进行划分;
(2)计算以属性A或B为划分的Gini增益,并说明决策树学习算法选择哪个属性进行划分;
(3)计算以属性A或B为划分的分类误差(Classification Error)增益,并说明决策树学习算法选择哪个属性进行划分;
(4)说明信息熵增益、Gini增益和分类误差增益对属性选择有不一样的偏好。
答:
(1)
根节点信息熵Ent(root) = -= -(4/10)-(6/10)=0.97
以属性A划分的信息熵Ent() = 0.985, Ent() = 0;
信息熵增益GAIN = Ent(D)-Ent() = 0.28;
以属性B划分的信息熵Ent() = 0.81, Ent() = 0.65;
信息熵增益GAIN = Ent(D)-Ent() = 0.26;
以A划分的信息熵增益更大,所以选择A划分。
(2)
根节点Gini系数Gini(root) = 0.48;
以属性A划分Gini(T) = 0.49, Gini(F) = 0;Gini增益为0.48-0.34 = 0.12;
以属性B划分Gini(T) = 0.38,Gini(F) = 0.28,Gini增益为0.48-0.32 = 0.16;
以属性B划分的Gini增益更大,所以选择B划分。
(3)
根节点的分类误差Error(root) = 0.4;
以属性A划分Error(T) = 3/7,Error(F) = 0,Error增益为0.1;
以属性B划分Error(T) = 0.25,Error(F) = 1/6,Error增益为0.2;
以属性B划分的分类误差增益更大,所以选择B划分。
(4)
信息熵增益偏好于属性A,Gini增益,分类误差增益更偏好于属性B。