机器学习深版03:决策树和随机森林
文章目录
1. 信息熵
1.熵
熵越小,样本集合的不纯度越低;熵越小,知识的不确定性越小。
理解:越不可思议的事件发生了,给人带来的信息量就越大。
2. 条件熵H
H(Y|X)表示在已知随机变量X的条件下,随机变量Y的不确定性。
3. 相对熵D(互熵、交叉熵、鉴别信息)
相对熵:可以度量两个随机变量的距离,如果是实际与预测之间,则让它越小越好。
设偏p(x)、q(x)是X取值中的两个概率分布,则p(x)对q(x)的相对熵定义:
4. 互信息I(与信息增益本质一样)
两随机变量的公共信息。
相互独立结果就是0,不独立的话就是非零。
两个随机变量X、Y的互信息定义:
5.整理得到的等式
结论:给了Y这个条件,X的不确定性不会增大,可能减少可能不变。
6. 相互关系
Venn图表示熵、条件熵与互信息之间的关系。
2. 决策树
优点:训练速度快
示例:决策树就是建立一棵熵不断减少的树,但是不一定会让他最后为0,因为可能会过拟合。
和梯度下降一样,都可以理解为一种贪心算法。
1. CART:基尼系数
Classification and Regression Trees 分类与回归树
CART和C4.5之间主要差异在于分类结果上,CART可以回归分析也可以分类,C4.5只能做分类;C4.5子节点是可以多分的,而CART是无数个二叉子节点;
(1) 设结点的训练数据集为D,计算现有特征对该数据集的基尼指数.此时,对于每个特征,每次取其中一个每个可能取得值,根据样本点对该值的测试结果为”是”或”否”将D分成2部分,并计算基尼指数.
(2) 在所有可能的特征,以及他们所有可能的切分点中,选择基尼指数最小的特征,该选择的特征为最优特征,该特征中的切分点为最优切分点,依照最优特征和最优切分点生成二叉树,并把训练数据集分配到子节点中。
(3)对两个子节点递归调用 (1) (2) ,直至满足停止条件
(4)生成CART决策树。
1. gini系数
本质是用一条直线段代替曲线段的近似。一阶近似。
与经济学上的gini系数不一样。
两个东西不区分好坏都能用。
2. ID3:信息增益
与CART不同,ID3计算信息增益,C4.5计算信息增益比,首先求所有特征的信息增益或信息增益比,其中计算的数值是针对每一个特征,不将特征划分,而后以该特征将树延伸,在父节点确定的条件下,继续对子节点求所有特征的信息增益,后在划分。
3. C4.5:信息增益率
C4.5是基于ID3优化后产出的算法,主要优化了关于节点分支的计算方式,优化后解决了ID3分支过程中总喜欢偏向取值较多的属性。
4. 区别与联系
ID3和C4.5用于分类,CART可用于分类与回归
ID3和C4.5生成的决策树可以是多叉的,每个节点下的叉树由该节点特征的取值种类而定,比如特征年龄分为(青年,中年,老年),那么改节点下可分为3叉。而CART为假设决策树为二叉树,内部结点特征取值为”是”和”否”。左分支取值为”是”,有分支取值为”否”。
5. 评价
3. Bagging 和 随机森林
- 哪怕是在一棵树上过拟合,那多棵树就不用考虑过拟合的发生。
- 因为可能的是决策树在某一个方向上发生过拟合,树多了就好了。
- 重采样:有可能有36.8%的样本没有参与到决策树中。
- OOB数据:袋外数据,上面的36.8%。
- 样本规模没有必要和原始样本个数一样。
4. 样本不均衡的常用处理方法
- 首先是认识到精度这个指标不一定好。
- 欠采样:把较多的样本A分成多批采样。
- 重采样:较少的样本B做很多次的采样。
- 一般来说:欠采样的效果优于重采样。
- 样本较多的类别可以进行聚类处理,每一个簇中选择几个来代表那一个簇。
- SMOTE:样本数目较小的类别,自己生成样本。
- 代价敏感学习:降低A类学习,提高B类权重。
5. 使用RF建立计算样本间相似度:
6. 使用随机森林计算特征的重要度:
7. 异常值的发现
8.决策树做回归
它的结果仍然是台阶状的。