决策树分割属性选择
决策树算法是一种“贪心”算法策略,只考虑在当前 数据特征的情况下的最好分割方式,不能进行回溯操作。
对于整体的数据集而言,按照所有的特征属性进行划分操作,对于所有划分操作的结果集“纯度”进行比较,选择“纯度”越高的特征属性作为当前需要分割的数据集进行分割操作,持续迭代,直到得到最终结果。决策树是通过“纯度”来选择分割特征属性点的。
决策树量化纯度
决策树的构建是基于样本概率和纯度进行构建操作的,那么进行判断数据集是否“纯”可以通过三个公式进行判断,分别是GINI系数、熵(Entropy)、错误率,这三个公式值越大,表示数据越不纯,越小表示悦椿;实践证明这三种公式效果差不多,一般情况使用熵公式
决策树量化纯度
当计算各个特征的属性的量化纯度值后使用信息增益度来选择出当前数据集的分割特征属性;如果信息增益度的值越大,表示该特征属性上回损失的纯度越大,那么该属性就越应该在决策上层,计算公式为:
Gain=H(D)-H(D|A)
Gain为A为特征对训练数据集D的信息增益,它为集合D的经验熵H(D)与特征A给定条件下D的经验条件熵H(D|A)之差。
信息增益率计算方式
决策树算法的停止条件
决策树构建的过程是一个递归的过程,所以必须给定停止条件,否则过程将不会进行停止,一般情况下可以设置以下停止条件:
1.大于设置的决策树的最大深度;
2.小于设置的内部节点再划分的最小样本数
3.小于设置的叶子节点最小样本数
4.大于设置的最大叶子节点数
5.小于设置的节点划分不纯度
决策树算法效果评估
决策树的效果评估和一般的分类算法一样,采用混淆矩阵来计算准确率、召回率、精确率等指标。
也可以采用叶子节点的纯度值总和来评估算法的效果,效果越好
决策树的损失函数(该值越小,算法效果越好)