决策树相关笔记

一.划分准则

1.熵和信息增益

​ ​ 熵的计算:

​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​熵(S)=-p_1log(p_1)-p_2log(p_2)

​ ​ 在这里,S 表示一个分支的样本,p_1 表示该样本中属于 class1 类别的概率,p_2 是该样本中数据属于 class2 类别的概率。

​ ​ 熵的值越小,表示信息的纯度越高。

​ ​ 信息增益:

​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​信息增益(x)=变量划分前的熵-变量划分后的熵的加权平均值
​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​信息增益(x)=父节点的熵-子节点熵加权的平均值

​ ​ 通常选择信息增益较大的指标划分变量。

2.基尼系数

​ ​ 与熵的计算方法类似:

​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​基尼系数(S)=1-(p_1^2+p_2^2)

​ ​ 信息熵与基尼系数是两种相似的计算方法,根据实际情况选择。在通常情况下,可以任意选择使用熵或基尼系数,这两个度量方法通常并不会对模型产生重大的影响。

二.过拟合问题

特征:

​ ​ 1.过拟合的模型在训练数据上的准确率高,而在测试数据上明显比训练数据上的准确率低。

​ ​ 2.如果模型只学习特定的模式,那么它不是泛化模式,只是一种对训练数据的存储。

​ ​ 3.在过拟合模型中,模型对训练数据产生相对较小的变化,而在最终产生的规则中存在显著变化。实际上,这些模型的及其参数的差异较大(模型具有很大的差异)。

​ ​ 4.过拟合模型过于复杂,参数太多,需要简化。如果模型是一棵决策树,则这棵树是一棵分支和规则都很多的巨树,因此,这棵决策树必须被剪枝。

​ ​ 5.过拟合是一个通用的概念。在任何模型上都会产生过拟合的问题,无论模型是线性回归、逻辑回归还是决策树。

解决方案:

​ ​ 通过决策树的剪枝来避免过拟合问题。

​ ​ 可以设置 max_depth(树的最大深度)、max_leaf(最大叶子节点数量)、min_samples_in_leaf_node(叶子节点中最少样本数量)等参数来限制决策树的生长。

三.欠拟合问题

特征:

​ ​ 1.欠拟合模型在训练数据上的准确率较低。

​ ​ 2.如果决策树的深度小于最佳深度,则该决策树过于简单,总会有进一步改进的余地。

​ ​ 3.欠拟合模型在数据中学习的模式较少。它是一个具有较少最优叶子节点和较少规则的决策树。

​ ​ 4.这种类型的模型也被称为带有偏差的模型。在使用该模型预测结果时会有很多错误。欠拟合模型在其参数估计中存在固有偏差。

解决方案:

​ ​ 可以在模型中加入更多的特征(变量),以提高其准确率。对于决策树来说,必须增加树的规模。为了达到这一目的,可以为剪枝参数设置宽松的条件。

四.构建决策树模型的步骤

​ ​ 构建决策树模型的步骤如下:

​ ​ 1.导入数据。探索数据,验证并清理数据。

​ ​ 2.将全部数据拆分为两部分。将 80% 的数据作为训练数据,剩余 20% 的数据作为测试数据。

​ ​ 3.基于训练数据构建模型。

​ ​ 4.创建混淆矩阵并计算模型在训练数据上的准确率。

​ ​ 5.在测试数据上验证模型;创建混淆矩阵并计算模型在测试数据上的准确率。

​ ​ 6.比较模型在训练数据和测试数据上的准确率;使用剪枝参数来微调模型。在调节剪枝参数时,注意如下问题:

​ ​ (1) max_depth(default = "None" - Infinity)

​ ​ max_depth 的参数值较大会导致模型的过拟合问题。

​ ​ max_depth 的参数值较小会导致模型的欠拟合问题。

​ ​ (2) max_leaf_nodes(default="None" - Infinity)

​ ​ max_leaf_nodes 的参数值较大会导致模型的过拟合问题。

​ ​ max_leaf_nodes 的参数值较小会导致模型的欠拟合问题。

​ ​ 7.使用不同的参数设置构建多个模型。使用二分搜索法获取最佳模型。当模型在训练数据上获得最高的准确率,且该模型在测试数据上的准确率与之匹配时,获得最终的模型。