决策树是一种基本的分类和回归方法,作为分类的决策树对于训练数据会产生一颗树。决策树同数据结构中的树形结构一致,都是由边和节点构成的,节点之间是由边相连的,每个节点是由叶子和非叶子节点构成的,多个节点连到一起就构成了树。决策树是以训练数据为基础,对训练数据进行归纳和分析,得到了一颗以特征词为节点的多叉树。在树中,采用了自顶向下的构建方法构建决策树,依据属性值的不同选择不同的分支路径,并对每个属性都做相同的操作,直到属性不可再分为止,叶子节点作为分类的结果。
决策树将文本分类任务转化为一颗树,通过对节点的选择完成分类任务。构造决策树时,最主要任务是如何生成一颗高精度、节点少的决策树,使减少树计算的同时又能有效的表示整个文档的分布。节点的选择通常计算所有的属性,将属性的最大值作为当前选择的节点。常用的属性计算方法有ID3、C4.5、CART等方法。ID3算法采用了信息增益的方法作为特征选择规则。C4.5算法采用了信息增益比的方法作为特征选择规则,公式如下式所示。CART算法采用了基尼系数的方法作为特征选择规则,计算公式如下式所示。
信息增益详见:https://blog.csdn.net/shushi6969/article/details/79938560
信息增益比是信息增益与训练集的经验熵之比,公式如下,其中A为特征词,D为训练集,g(D,A)为信息增益,H(D)为训练集的经验熵。
概率基尼系数公式
其中p_k表示样本点k属于第k类的概率为p_k。
对于在特征选择方法中,基尼指数公式为
C_k是D中属于第k类的样本子集,k是类别的个数,D为样本集合D。而对于特征词A的条件下,集合D的基尼指数为
式中的D2表示特征词A将数据集合分成了D1和D2(一个中是特征词A的一个集合,一个是不包含特征词A的集合),基尼指数表示集合D的不确定性,基尼指数越大,表示样本集合的不确定性越大,和熵相似。
例子
下面以信贷样本数据为例子进行各个方法的计算,该目的是判断信贷的类型。
设
1.信息增益
(1)计算数据集D类型的经验熵。
(2)分别计算每个特征的对数据集D的信息增益
通过比较四个特征的信息增益值,得到了g(D,A3)的信息增益值最大,则将A3作为最优特征。
(3)由于上述方法已经将A3作为结点的特征,所以,上述表分成了2个子表,得到了表1和表2
通过观察表1可知,信贷的类别都是“是”,故直接将该表的结点设置为“是”;而在表2中信贷类型的标签有是和否,故需要对表2进一步的计算。
(4)表2进一步计算
通过上述计算可知,g(D2,A2)的值比较大,故将A2作为本层的最优特征。
(5)对D2进行字表划分,得到表3和表4
观察上述表的类型都是一样的,故决策树分类完成。得到了下图的决策树。
2.信息增益比
就是把上式的信息增益转换为了信息增益比公式
得到的结果也是A3特征作为最优特征
针对表2计算,得到如下结果
得到的结果和信息增益的结果一样。信息增益方法和信息增益比方法的联系在于,信息增益比的分母都是一样的,而分子和信息增益的值,故信息增益和信息增益比得到的结果是一样的。
3.基尼指数
(1)求特征的基尼指数
从全局中考虑,Gini(D,A3)得到的gini指数最少,故将该A3作为整体特征的结点(由于A3中只有“有自己的房子”和“没有自己的房子”,故该树只有2个分支),和上述2中方法一样需要重新生成新的表和重新计算A1,A2,A4的基尼指数,最终得到总体的树。
参考文献
统计学习方法
数据挖掘概念与技术