机器学习实践——决策树(ID3算法)

决策树数据挖掘分类算法中最直观最容易理解的算法之一,基本不需要太多的理论知识就可以理解决策树的思想,是解决分类问题较好的方法之一。

ID3算法应用香农熵的理论知识,先来了解一些理论知识。

信息增益:在划分数据之前或之后信息发生的变化称为信息增益。

香农熵(熵):信息增益的度量单位。

划分数据的大原则:将无序的数据变得有序。

算法思想:如何度量数据变的愈发有序,方法之一就是计算每个特征值划分数据集获得的信息熵,获得信息熵越高的特征就是划分数据的最好选择,不断地选出最好的特征值,直至完全分类,即可构建决策树,而这些特征值就是非叶结点,每条记录的类就是叶节点。

熵计算公式:

                    

其中 P(X)表示待分类的概率

代码实现:

  1:首先是香农熵的计算公式

机器学习实践——决策树(ID3算法)_第1张图片

2:按照特征划分数据集

机器学习实践——决策树(ID3算法)_第2张图片

3:选择最好的数据集划分方式:

机器学习实践——决策树(ID3算法)_第3张图片

机器学习实践——决策树(ID3算法)_第4张图片

4:计算出现次数最多的类,这一步是为了接下来的创建树过程,递归结束的条件之一

机器学习实践——决策树(ID3算法)_第5张图片

5:创建决策树:

机器学习实践——决策树(ID3算法)_第6张图片

机器学习实践——决策树(ID3算法)_第7张图片

6:利用Matplotlib绘制树形图,这部分就不贴代码了

 

7:示例:使用决策树预测隐形眼镜类型

机器学习实践——决策树(ID3算法)_第8张图片

8 实验结果:

机器学习实践——决策树(ID3算法)_第9张图片

 

你可能感兴趣的:(机器学习实践——决策树(ID3算法))