目录
一.什么是决策树
一种最基本的分类与回归方法,因为实际应用中基本上全是用来分类,所以重点讨论分类决策树。其本质就是一颗树,根据损失函数最小化原则选择根节点,节点决定分类的走向哪个叶节点,叶节点代表最后的类型。
二.构造决策树
1.选择根节点
(1)熵:代表事物的混乱程度,在分类中不需要过度理解,只要知道熵越小混乱程度越小,分类的效果也就越好。
Pi代表分类后一类出现的概率。Gini也是来衡量分类效果的,都是越小越好。
2.构建
过程中要随着树的深度增加使熵值下降最快越好。举例:
用着四个特征构造决策树,首先确定根节点。
首先计算假如没有进行选择节点看熵的大小:一天打球的概率使9/14,不打球是5/14,所以:
算outlook为根节点
3.递归构造
知道了temperature是最佳根节点,根据它的子节点中的数据进行再次计算其他三个分类的信息增益,使得信息增益最大即可。
4.ID3存在的问题:
上文的决策方法是ID3,这个方法主要的缺点是可能出现分类过多,假如上文中的分类是14个,即每个人一个类,那么熵为零,这样信息增益最大,但实际中不可能每个人一类。
改进方法C4.5:算的信息增益除以熵来当作新的评价指标。
5.剪枝
·预剪枝:构造决策树,设定数的深度,提前停止,避免过拟合。
·后剪枝:构建完决策树,剪枝。比如设定一些条件。评价函数和叶子节点个数共同决定是否剪枝。这里α是自定义的参数。
6.随机森林
随机:1随机选择多个样本,随机选择多个特征,也就是本来100*100的样本随机选取出50*50的样本进行构建决策树。
当训练好森林之后,想要预测,把特征发送给森林里面所有相关的数目,获得多个结果,如果是离散的数据,只需计算最多的结果,连续的计算平均值即可。
三.优缺点
优点
1)决策树易于理解和实现,人们在在学习过程中不需要使用者了解很多的背景知识,这同时是它的能够直接体现数据的特点,只要通过解释后都有能力去理解决策树所表达的意义。
2)对于决策树,数据的准备往往是简单或者是不必要的,而且能够同时处理数据型和常规型属性,在相对短的时间内能够对大型数据源做出可行且效果良好的结果。
3)准确性高: 挖掘出来的分类规则准确性高, 便于理解, 决策树可以清晰的显示哪些字段比较重要, 即可以生成可以理解的规则.
4)适合处理有缺失属性的样本,对缺失值不敏感
缺点
1)容易发生过拟合(剪枝 随机森林)
2)分类过程中每一步都依据单一特征,忽视了特征之间的关联性,在处理特征关联性强的数据时表现不好
3)对于样本不均衡的数据集表现不好,欠拟合。在特征选择时ID3算法偏好于选取可取值数目较多的属性,C4.5算法偏向选取可取值数目较少的属性(实际中是在算法中采用启发式原则,先从候选属性中选出信息增益高于平均水平的属性,再从中选择增益率最高的属性)