1. 什么是决策树:
决策树是一种预测模型,用来进行分类,是一种有监督学习。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值
2 决策树实例(围绕一个例子)
问题1. 基于表1中给出的训练集,给出分别使用极小熵和极大熵选择扩展属性所生成的两棵决策树。然后给出你对树的“大小”的理解,并按你的理解比较两种方法生成的决策树大小。
问题1. 基于表1中给出的训练集,给出分别使用极小熵和极大熵选择扩展属性所生成的两棵决策树。然后给出你对树的“大小”的理解,并按你的理解比较两种方法生成的决策树大小。
(1) 极小熵生成决策树,设表1给的数据集为D,根据最大信息增益选择最优特征生成极小熵决策树,计算各特征A1、A2、A3、A4、A5对数据D的信息增益,统计结果为
|
|
|
class=1 |
class=2 |
|
D |
|
|
8 |
7 |
H(D)= 0.9968 |
A1 |
D1 |
8 |
2 |
6 |
g(D,A1)=0.2880 |
D2 |
7 |
6 |
1 |
||
A2 |
D1 |
5 |
4 |
1 |
g(D,A2)=0.1398 |
D2 |
4 |
1 |
3 |
||
D3 |
6 |
3 |
3 |
||
A3 |
D1 |
3 |
1 |
2 |
g(D,A3)=0.0292 |
D2 |
12 |
7 |
5 |
||
A4 |
D1 |
7 |
6 |
1 |
g(D,A4)=0.2880 |
D2 |
8 |
2 |
6 |
||
A5 |
D1 |
6 |
5 |
1 |
g(D,A5)=0.4131 |
D2 |
4 |
0 |
4 |
||
D3 |
5 |
3 |
2 |
上表中的D1和D2,D3分别表示在各个特征中取值为1、2和3的样本子集,根据计算后统计在表格中的数据可得:
H(D)=-8/15*log2(8/15)—7/15*log2(7/15)=0.9968
g(D,A1)=H(D)-[8/15*H(D1)+7/15*H(D2)]=0.2880
g(D,A2)=H(D)-[5/15*H(D1)+4/15*H(D2)+6/15*H(D3)]=0.1398
g(D,A3)=H(D)-[3/15*H(D1)+12/15*H(D2)]=0.0292
g(D,A4)=H(D)-[7/15*H(D1)+8/15*H(D2)]=0.2880
g(D,A5)=H(D)-[6/15*H(D1)+4/15*H(D2)+5/15*H(D3)]=0.4131
根据上面的计算结果,特征A5的信息增益最大,所以选择A5为根节点。根据A5的取值将样本分成3个结合,S1={2,3,6,8,12,13},S2={1,5,7,14},S3={4,9,10,11,15}其中集合S2已全部属于同一个类,不需要再分,已成为叶子节点。对于集合S1,计算统计结果为:
class=1 |
class=2 |
||||
D |
|
|
5 |
1 |
H(D)=0.6500 |
A1 |
D1 |
1 |
1 |
0 |
G(D,A1)=0.0484 |
D2 |
5 |
4 |
1 |
||
A2 |
D1 |
3 |
2 |
1 |
G(D,A2)=0.1909 |
D2 |
1 |
1 |
0 |
||
D3 |
2 |
2 |
0 |
||
A3 |
D1 |
1 |
1 |
0 |
G(D,A3)=0.0484 |
D2 |
5 |
4 |
1 |
||
A4 |
D1 |
5 |
5 |
0 |
G(D,A4)=0.6500 |
D2 </ |