大多数决策树中关于属性划分的讨论都是基于离散属性的假设,但如果西瓜数据集中包含了密度,含糖率两个属性,那么如何在含有连续值属性的数据集上进行决策树的构建呢
可以采用连续属性离散化的方法进行,比如采用二分法把连续属性化作两个区间。C4.5 算法也采用了这种方法
给定样本集
即把
定义连续属性的信息增益为
其中,
求取步骤如下
注意,与离散属性不同的是,若当前节点划分属性为连续属性,该属性还可作为后代节点的划分属性。
对于下面的数据集
编号 | 密度 | 含糖率 | 好瓜 |
---|---|---|---|
1 | 0.697 | 0.460 | 是 |
2 | 0.774 | 0.376 | 是 |
3 | 0.634 | 0.264 | 是 |
4 | 0.608 | 0.318 | 是 |
5 | 0.556 | 0.215 | 是 |
6 | 0.403 | 0.237 | 是 |
7 | 0.481 | 0.149 | 是 |
8 | 0.437 | 0.211 | 是 |
9 | 0.666 | 0.091 | 否 |
10 | 0.243 | 0.267 | 否 |
11 | 0.245 | 0.057 | 否 |
12 | 0.343 | 0.099 | 否 |
13 | 0.639 | 0.161 | 否 |
14 | 0.657 | 0.198 | 否 |
15 | 0.360 | 0.370 | 否 |
16 | 0.593 | 0.042 | 否 |
17 | 0.719 | 0.103 | 否 |
其中密度可以排序为
经过计算发现,当