决策树
基本思想:根据评估划分效果的一种标准,在某个属性上进行划分,最终形成一颗树。该叶子节点即为属于某个类。
根据评估标准分为两类,一类是基于熵的,一类是基于基尼系数的。基于熵的有两个代表的算法ID3,C4.5。基于基尼系数的是cart算法
首先介绍熵的概念,一种混乱程度的评估标准,一组数据,类的种类越少,证明混乱程度低,越纯,因此切分的标准就是熵变低,哪个属性切分后变低的越多,就用哪个属性进行切分。
ID3算法
使用熵值得变化来衡量切分属性的好坏,命名熵值得变化为信息增益,即划分前和划分后的熵值差值。ID3算法有四个缺点,第一个是不能处理连续数据,第二个是没有考虑缺失值得情况,第三个是没有考虑过拟合的情况,第四个是使用的信息增益,有一定的确定,若属性分的种类多的情况较属性分的少的情况信息增益。比如一种极端的情况,属性a是id值,其可以把所有的数据都看成一个类,这样通过属性a分开后的数据的熵值为0,信息增益为最大,但是a这个属性和最后的结果并没有什么必然的联系,因此使用该属性划分不好。
C4.5算法
主要解决ID3算法四个不足
第一个不能处理连续数据
将所有样本的连续数据排序,取两两样本之间的平均值来进行划分,划分完毕后的该属性在左右子树依然能划分
第二个问题处理缺失值
https://blog.youkuaiyun.com/leaf_zizi/article/details/83503167
第三个问题是过拟合
过拟合引入了加入正则化项的剪枝技术,在cart中做详细的解释
第四个问题是信息增益偏向于特征分类多的
使用信息增益比来表示划分节点的好坏情况,信息增益比是信息增益比上特征熵,特征熵是根据属性划分的个数,每个划分后的数量比上原来数量的熵值和来表示的
cart
cart使用基尼系数进行划分,基尼系数表示不纯度,越小越好,且cart是二叉树。
cart处理离散数据和连续数据,处理连续数据和C4.5一致,处理离散数据的时候,二分每次只根据一个属性进行划分。
建立分类树
停止的条件
1.没有特征,数量小于阈值
2.基尼系数小于阈值
3.层数大于阈值
预测的类是,叶子节点中概率大的分类的类别
建立回归树
回归树预测的结果是连续值,分类树是离散值,然后处理连续属性的方式不一样,最后预测结果方式也不一样
连续数据,主要是两个点,一个是划分特征,一个是划分值,划分特征预选定后,划分值左右两边是求得各自与均方误差。根据基尼系数找到最好的划分特征和划分点后,如何预测?根据叶子节点的均值或者中位数代表最后回归的结果值。
剪枝
后剪枝
CART树的剪枝算法可以概括为两步,第一步是从原始决策树生成各种剪枝效果的决策树,第二部是用交叉验证来检验剪枝后的预测能力,选择泛化预测能力最好的剪枝后的数作为最终的CART树。