• 决策树的生成


    一、ID3算法

          ID3算法的核心是在决策树各个结点上应用信息增益准则选择特征,递归地构建决策树。具体方法是:从根结点(root node)开始,对结点计算所有可能的特征的信息增益,选择信息增益最大的特征作为结点的特征,由该特征的不同取值建立子结点;再对子结点递归地调用以上方法,构建决策树;直到所有的信息增益均很小或没有特征可以选择为止,最后得到一个决策树,ID3相当于用极大似然法进行概率模型的选择。

    二、C4.5生成算法

          C4.5算法与ID3算法相似,C4.5算法对ID3算法进行了改进,C4.5在生成过程中,用信息增益比来选择特征。

    三、C5.0算法

         C5.0是基于C4.5的开发的新版本,是一个商业版软件,它能适用于很多类型的问题,C5.0主要增加了对Boosting的支持,它同时也用更少的内存,与C4.5相比,它构建了更小的规则集,因此它更准确。

    四、CART算法

         分类与回归树(classification and regression tree, CART)模型是应用广泛的决策树学习方法。CART由特征选择、树的生成及剪枝组成,即可以用于分类也可以用于回归。

         CART算法的组成:

    (1)、决策树生成:基于训练数据集生成决策树,生成的决策树要尽量大;

    (2)、决策树剪枝:用验证数据集对已生成的树进行剪枝并选择最优子树,这时用损失函数最小作为剪枝的标准

       CART生成:

       决策树的生成就是递归地构建二叉决策树的过程,对回归树用平方误差最小化准则,对分类树用基尼指数(Gini index)最小化准则,进行特征选择,生成二叉树。

     

    五、ID3C4.5C5.0算法比较

     

    ID3

    C4.5

    C5.0

    缺点

    非递增算法,单变量决策树,(在分枝节点上只考虑单个属性)只考虑属性变量是离散形

    1、在构建的过程中需要对数据集进行多次的扫描与排序,因此算法比较低效

    2、大数据集乏力,只适用于能够驻留内存的数据集,当训练集大的无法在内存中容纳时,程序无法运行

     

    优点

     

    属性变量是可以连续形的,能够在构造过程中进行剪枝

    1、应用于大数据集的分类算法,主要在执行效率和内存使用上进行了改进

    2、在面对数据遗露和输入字段很多的问题时非常稳健

    3、提供强大的技术以提高分类的精度

    4、比一些其它类型的模型更易于理解,模型退出的规则有非常地直观的解释

    节点选择

    信息增益最大

    信息增益率最大

    采用Boosting的方式提高模型的准确率,又称为BoostingTree,在软件上计算速度较快,占用内存较小

     

     

    采用悲观的剪枝方法,它使用训练集生成决策树又用它来进行剪枝,不需要独立的剪枝集

     
  • 相关阅读:
    python之进程和线程2
    Python学习笔记7:yield生成迭代器
    Python学习笔记6:装饰器
    Python学习你急5:文件打开与处理
    Python学习笔记4:集合方法
    Python学习笔记3:字典方法
    Python学习笔记2:列表操作方法详解
    Python学习笔记1:字符串方法
    番外篇:Vim使用方法
    Day12: 正则表达式
  • 原文地址:https://www.cnblogs.com/baoxuhong/p/9825938.html
Copyright © 2020-2023  润新知