【笔记】决策树

来源:互联网 发布:宁德catl知乎 编辑:程序博客网 时间:2024/06/05 02:59

根据子树划分属性的选择的方法不同,可以分为不同的决策树算法

1. ID3

使用 信息增益 来选择最优的划分属性, 选择信息增益最大的属性进行划分。

  • 信息熵 = - p * log(p)

  • a属性的信息增益 = 划分前信息熵 - a属性划分后的信息熵

2. C4.5

使用 信息增益率 来选择最优划分属性,因为 ID3中信息增益是对 属性取值数目多的属性有偏好,需要减少这种偏好带来的影响。

  • 信息增益率 = a属性的信息增益 / a属性的固有值

  • a属性的固有值 与a属性的可能取值数目相关,数目越大,固有值越大。

  • 因为 C4.5 对属性取值数目少的属性有偏好,因此,需要结合 ID3 和 C4.5 一起划分,先从候选属性集中找出信息增益高于平均水平的属性,再从中选择信息增益率最高的属性。

3. CART 分类回归树

使用 基尼指数 来选择最优的划分属性,基尼指数 表示了数据集的纯度,反映了从数据集中 随机抽取两个样本,其类别标记不一致的概率。


4. 剪枝

  • 预剪枝

    • 在决策树生成的过程中对结点进行估计,如果当前结点的划分不能带来决策树泛化性能的提升,则停止划分并将当前结点作为叶子结点。

    • 优点:减低了过拟合的风险,减少了决策树的训练时间。

    • 缺点:预剪枝是贪心策略,存在欠拟合的风险。

  • 后剪枝

    • 先训练生成一棵完整的决策树,然后从底向上对非叶子结点进行考察,若当前结点的子树替换为叶子结点能带来决策树泛化能力的提升,则将该子树替换成叶子结点。

    • 优点:欠拟合的风险很小,泛化能力优于预剪枝。

    • 缺点:训练时间开销很大。

5. 连续值处理(二分法处理)

6. 缺失值处理

原创粉丝点击