机器学习(西瓜书),第4章,决策树
一、算法流程
基于递归的“分而治之”:终止条件有(1)叶结点为同一类(2)叶结点为空(3)叶结点所有属性相同
其次最核心的部分是第8行的,寻找最优划分属性
二、算法核心——如何选取最优的划分准则
基于信息熵与信息增益:若一个分划使得新节点信息熵之和得到尽可能的下降(即信息增益越大),说明分划让纯度提升了,是个非常理想的划分。
信息熵,信息增益
在南瓜书中也补充了信息熵的取值范围,其最小值是由不加约束的全局最小值大于0反证获得,最大值是由拉格朗日乘数法的条件极值求得。
另一种准则:基尼系数
三、剪枝
目的:减少过拟合情况
分类:预剪枝和后剪枝,优缺点整理如下
优点 | 缺点 | |
预剪枝(构建树时,若分枝不会提高分类正确率,则不生成叶结点) | 显著减少训练和计算时间 | 本质为贪心算法,只是局部最优解,无法确保再下一层是否会让结果变好 |
后剪枝(在生成一个完整的树后。通过自叶结点的回溯,若合并能提高分类正确率,则合并) | 减少欠拟合的风险 | 首先要生成树,再自下向上回溯,训练和计算开销大 |
四、连续值与缺失值
连续值:二分法,以某一个大于小于某个取值作为分类标注
缺失值:以无缺失的子样本去预测整体分布
五、多变量决策树
以多变量的线性组合替代上述简单的类别分类or连续值二分类,在阅读材料里也补充了最小二乘法的线性分类器(值得回顾第三章内容:个人认为线性判敛线的垂线便是一个很好的分类直线,示意如下图蓝线,当然垂线的具体交点,可以以投影线上最近的两点中值为准,也可以进行其他的准则)和内嵌入感知机的感知机树