第4章 决策树
基本流程与定义
决策树是一种分类模型,通常用于预测基于一组属性或特征的值。它通过一系列问题将数据分割成越来越小的子集,直到每个子集都包含相似的值,即叶结点。决策树通常包括一个根结点、若干内部结点和叶结点。
决策树生成算法
-
递归生成过程: 从根节点开始,根据当前节点的属性集对训练集进行划分,直至满足停止条件。
-
停止条件: 有三种情形会导致递归返回:(a) 所有样本属于同一类别, (b) 属性集为空或所有样本在所有属性上取值相同, (c) 当前节点样本集合为空。
-
最优划分属性选择: 选择能够最大化信息增益的属性作为当前节点的划分属性。
-
信息熵的定义: Ent(D) = -p1log2(p1) - p2log2(p2) ... (其中pi是第i类样本的比例)。
-
信息增益Gain(Da) = Ent(D) - ∑Pi*Ent(Di): 计算每个分支的信息增益并选择最大者。
-
剪枝处理
剪枝是防止过拟合的主要手段,包括预剪枝和后剪枝两种策略:
-
预剪枝: 在每个节点上评估是否继续划分,如果划分不能提升泛化性能则停止划分。
-
后剪枝: 首先生成完整的决策树,然后自底向上地移除那些不会提升验证集精度的子树。
连续属性的处理
对于连续属性,使用离散化技术将其划分为若干个区间,再基于这些区间建立决策树,可以通过选择中位数作为分割点来处理连续属性。
缺失值处理
当存在缺失值时,可以采用加权的方式处理,即给有缺失值的样本分配较低的权重,以减少其对模型的影响。
多变量决策树
多变量决策树也称为斜决策树,其中分类边界不总是与坐标轴平行,而是可以根据实际需要采用更复杂的分段方式来近似真实的分类边界。