利用决策树算法id3构造决策树,id3算法是一种典型的决策树算法
内容1。决策树的基本原理1。如何评价和选择某个属性值是最好的划分。节点杂质的测量2。何时停止决策树2的生长。ID3算法
一、决策树的基本原理
决策树是常用的机器学习方法之一。顾名思义,决策是根据树形结构做出的。
决策树的
构建过程
是一个递归过程。每次从根节点选择最佳特征对数据进行分割,当数据集无法分割时,到达叶节点,这就是分类的结果。根据施工流程,需要解决以下两个问题:
1.如何评价和选择某个属性值是最好的划分。选择最佳划分尺度通常取决于划分后子节点的不纯程度。
当原始的10个数据集被分成C0:5时,C1:5的纯度低于C0:9和C1:1的纯度。
节点杂质的度量节点杂质的度量方法有三种:基尼、熵和分类误差。本文主要讨论熵。
熵(Entropy)
用来描述一个集合的不纯程度。公式如下:T代表一个数据集,J代表数据组合中的一个类别,p(jt)代表这个类别在数据集中所占的比例。
具体计算实例如下。在第一个图像中,有0个C1类别和6个C2类别。一共六个数据。根据上式,熵为0。第二图像的计算熵是0.65。这两组结果显示,第一组数据非常纯净,第二组数据非常低。即熵越大,纯度越低,杂质越高。
信息增益(information gain)
信息增益是特征选择的一个重要指标。对特征进行分类表明有多少信息可以被带入系统。它带来的信息越多,特征就越重要,相应的信息增益就越大。
因此,信息增益可以用来选择决策树的分割特征。id决策树学习算法利用信息增益来划分特征。
计算增益的具体公式如下。
2.何时停止决策树的生长,需要条件来结束决策树的生长。当满足以下两个条件之一时,生长应该停止。
如果当前节点包含的数据集的所有属性都属于同一个类(在这种情况下,数据集的熵为0),则无需进一步划分。所有的属性(特征)都被分割了。如果没有更多的属性可以划分,即使数据集不纯,也会停止增长。二。ID3算法该算法通过信息增益的方式选择分类特征,从而建立决策树。甜指甲油《机器学习》这本书提到了决策树学习算法的伪代码。根据算法的流程,我在这篇博客中详细介绍了,并用python实现了具体的决策树构造过程。