使用决策树算法进行鸢尾花数据分类(学习笔记)
决策树算法介绍
-
构建树的过程
- 从根节点开始,计算所有特征值的信息增益(信息增益比、基尼系数),选择计算结果最大的特征作为根节点。(信息熵增益->ID3,信息熵增益率->C4.5,基尼系数->CART)
- 根据算出的特征建立子节点,执行第一步,直到所有特征的信息增益(信息增益比)很小或没有特征可以选择为止。
-
直接按照以上步骤构建树容易产生过拟合的情况(训练出来的模型过于契合训练数据导致无法对测试数据进行分类)。
-
防止过拟合:减少模型的复杂度,简化决策树-->剪枝
- 预剪枝,构造树的同时进行剪枝
- 后剪枝,决策树构建完成后再进行剪枝
-
在sklearn中决策树算法的重要参数
- max_depth:树的最大深度(分割点的个数),最常用的用于减少模型复杂度防止过拟合的参数
- min_sample_leaf:每个叶子拥有的最少的样本个数
- max_leaf_nodes:树中叶子的最大个数
- 在实际应用中,通常只需要调整max_depth就已经足够防止决策树模型的过拟合
-
熵(Entropy):在信息论中,设离散随机变量X的概率分布为