1.决策树模型

  1.   决策树是一种基本的分类与回归方法,以建树的形式来做决策。
  2.   决策树学习的三个步骤:特征选择、生成决策树、决策树修剪。

机器学习经典算法——决策树

2.特征选择

特征选择就是寻找属性来划分样本,随着划分过程不断进行,我们希望决策树的分支结点所包含的样本尽可能属于同一类别,即结点的"纯度"越来越高。其准则就是信息增益或信息增益比。

信息熵:信息熵越小代表的样本纯度越高。

机器学习经典算法——决策树

信息增益:信息增益越大,则意味着用属性a来进行划分所获得的"纯度提升"越大。

机器学习经典算法——决策树

信息增益比:使用“增益比”来选择最优划分属性

机器学习经典算法——决策树

基尼指数:Gini越小,则D的纯度越高。

机器学习经典算法——决策树

3.决策树中的三个经典算法

  1. ID3算法:在决策树各个结点上应用增益准则选择特征,递归构建决策树,从根节点开始对结点计算所有可能的特征的信息增益,选择信息增益最大的特征作为结点的特征
  2. C4.5算法:改进ID3算法,用信息增益比来选择特征。
  3. CART算法:根据基尼指数来构建决策树

4.生成决策树(举个例子)

1)得到数据集

机器学习经典算法——决策树

2)计算信息增益

机器学习经典算法——决策树

3)生成决策树

机器学习经典算法——决策树

5.决策树修剪——剪枝处理

剪枝是决策树学习算法对付"过拟合"的主要手段。

过拟合原因:     1)噪声导致的过拟合:拟合了被误标记的样例,导致误分类。     2)缺乏代表性样本导致的过拟合:缺乏代表性样本的少量训练集作出的决策会出现过拟合。     3)多重比较造成的过拟合:复杂模型。

剪枝算法:

1. 计算每个结点的经验熵;

机器学习经典算法——决策树

2. 递归地从树的叶结点向上回缩;

3. 一直到得到损失函数最小的子树。

机器学习经典算法——决策树

机器学习经典算法——决策树

剪枝处理

预剪枝是指在决策树生成过程中,对每个结点在划分前先进行估计,若当前结点的划分不能带来决策树泛化性能提升,则停止划分并将当前结点标记为叶结点;

后剪枝则是先从训练集生成一棵完整的决策树,然后自底向上地对非叶结点进行考察,若将该结点对应的子树替换为叶结点能带来决策树泛化性能提升,则将该子树替换为叶结点。

判断决策树泛化性能是否提升:留出法,即预留一部分数据用作"验证集"以进行性能评估。

例如:在预剪枝中,对于每一个分裂节点,对比分裂前后决策树在验证集上的预测精度,从而决定是否分裂该节点。而在后剪枝中,考察非叶节点,对比剪枝前后决策树在验证集上的预测精度,从而决定是否对其剪枝。

6.特殊值处理

缺失值:即样本的某些属性值缺失。         

推广信息增益公式,为每个样本赋予权重,通过计算后会调整缺失值的自结点的权重:

机器学习经典算法——决策树

机器学习经典算法——决策树

机器学习经典算法——决策树

 

参考书籍:《机器学习》周志华、《统计学习方法》李航  

相关文章: