决策树-基尼系数(第二十四节课内容总结)

课程主要内容:决策树算法中的核心问题,包括熵与基尼系数的计算逻辑、连续值的离散化处理、过拟合风险及相应的减脂策略(预减与后减),重点解析了C4.5算法对稀疏矩阵和极端概率值的应对机制,并结合实际案例说明了特征选择、准确率评估与模型优化方法。

小结

  1. 基尼系数与信息增益的计算逻辑

基尼系数公式为,P值越大,基尼系数越小,表示纯度越高。

针对稀疏矩阵中概率趋近于零的情况(如500分之一),直接使用对数可能导致趋近正无穷的问题,因此引入基尼系数避免数值不稳定。

信息增益没有明确最大值,其取值范围受原始熵值影响,当原始熵值较大时,信息增益可趋近正无穷,故需引入基尼系数等替代指标。

  1. 连续值的离散化处理

连续特征可通过设定阈值(如60分作为及格线)进行二分类,转化为0或1的离散值。

此方法常用于将回归问题转化为分类问题,例如电影票房预测可按区间划分(优、良、差)进行分析。

该策略在逻辑回归中也有类似应用,体现了"区间划分"的建模思想。

  1. 决策树的过拟合风险与减脂策略

决策树易发生过拟合,尤其在数据复杂、分支过深或叶节点过多时,模型泛化能力下降。

预减策略:在构建过程中实时进行剪枝,通过限制深度、叶子节点数量、最小信息增益等参数控制模型复杂度。

后减策略:模型完全构建完成后,依据公式 L_{\text{total}} = \alpha \cdot C_T + (1 - \alpha) \cdot \text{EAF} 进行评估,其中 \alpha 为可调节参数,用于平衡模型复杂度与准确率。

\alpha 值的取值需结合实际情况调整:值较大时重视防止过拟合,值较小时优先保证预测准确率。

  1. 特征选择与模型评估

特征选择基于划分前后准确率的提升程度,若准确率下降或提升不足则不进行切分。

案例中通过色泽、根部、纹理等特征的对比分析,验证了不同特征的贡献度,最终保留对准确率提升显著的特征。

待办

  1. 决策树模型参数设置与验证

明确决策树的深度限制(如最大深度设为10)、最小信息增益阈值等参数

评估不同特征在划分前后的准确率变化,形成特征贡献度分析表

  1. 剪枝策略实施与参数调优

设计预减策略的具体实现规则,包括深度限制、叶子节点数量控制等

制定后减策略中 \alpha 参数的取值建议,结合实际数据情况推荐一个适中的初始值(如0.5~1)

  1. 模型对比与泛化能力测试

对比决策树与随机森林、深度学习模型在表格型复杂数据上的表现,评估其适用场景

1. 数据集介绍与基本结构

  • 泰坦尼克号幸存者数据集,包含乘客ID、年龄、性别、票价、客舱号、家庭关系、船票信息等字段。
  • 标签为"是否幸存",0代表死亡,1代表幸存,数据已预处理为0/1二分类形式。

2. 数据预处理流程

  • 使用Pandas进行数据加载与初步查看,确认数据共891行,包含多列缺失值。
  • 删除高缺失率特征列:姓名(name)和船票号(ticket),因信息价值低且难以有效处理。
  • 年龄列缺失约100条,采用均值填充;港口列缺失仅2条,直接删除而不进行填充,避免引入噪音。
  • 所有非数值型字段(如性别、船舱、家庭关系)被转换为数值型,以便模型训练。

3. 特征与生存关系分析

  • 性别与存活高度相关,是重要预测因子。
  • 年龄对存活有一定影响,但非决定性因素。
  • 姓名作为稀疏离散特征(命名重复率低),在实践中难以作为有效特征使用,建议剔除。
  • 家庭成员数量可能反映求生意志,但数据中关联性弱,暂未作为主要输入。
  • 票价与客舱号在实测中未显现出显著预测能力,建议忽略。

4. 模型构建与训练流程

  • 使用决策树分类器(Decision Tree Classifier)进行建模,训练集占70%,测试集占30%。
  • 通过train_test_split进行数据切分,特征(X)与标签(y)分离,确保训练过程符合监督学习规范。
  • 采用十折交叉验证(10-fold CV)评估模型稳定性,避免单纯"流出法"带来的偏差,提升结果可信度。

5. 超参数调优与过拟合问题分析

  • 初步尝试固定深度参数的网格搜索,发现模型存在过拟合现象:训练集准确率高(可达91.31%),测试集准确率仅82%以上,表明模型在训练数据上过度学习。
  • 通过网格搜索法(Grid Search)系统调整多个超参数,包括:
    • 深度(depth):1~10
    • 分裂标准:信息增益(information gain) vs. 基尼不纯度(Gini impurity)
    • 最小叶子样本数(min_samples_leaf):5, 10, 15, 20
    • 混乱程度下降值(min_samples_split):0, 0.5, 1.0, 1.5, 2.0
  • 最终确定最优参数组合为:
    • 深度 = 6
    • 分裂标准 = 信息增益
    • 最小叶子样本数 = 5
    • 混乱程度下降值 = 0

6. 模型结果与可视化

  • 最终模型在十折交叉验证下准确率为82.3%,优于初始简单模型(73.4%)。
  • 绘制了训练集(TR)与测试集(TE)准确率随深度变化的曲线图,清晰显示训练集持续上升而测试集趋于平稳,验证了过拟合现象