决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一度量是基于信息学理论中熵的概念。 决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。 分类树(决策树)是一种十分常用的分类方法。他是一种监管学习,所谓监管学习就是给定一堆样本,每个样本都有一组属性和一个类别,这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给出正确的分类。这样的机器学习就被称之为监督学习。

知识荟萃

决策树

基础入门

1.决策树-sklearn库官方介绍英文版 作者:开源库 http://scikit-learn.org/stable/modules/tree.html

可参照官方教材进行学习,适合有一定英语基础,对sklearn有更深认识。

2.scikit-learn 0.18 中文文档 作者:ApacheCN Apache中文网 http://cwiki.apachecn.org/pages/viewpage.action?pageId=10030181

中文教材,参照上面的英文教材一起学习。

3.决策树算法及实践 作者:王大宝的CD http://blog.csdn.net/sinat_22594309/article/details/59090895

描述:决策树是机器学习中相当经典的一种算法,既可以用作分类,也可以用作回归,同时还适合做集成学习用于随机森林等等,今天就来好好介绍一下决策树算法。

4.决策树DTC数据分析及鸢尾数据集分析 作者:Eastmount http://blog.csdn.net/eastmount/article/details/52820400

描述:决策树是用于分类和预测的主要技术之一,决策树学习是以实例为基础的归纳学习算法,它着眼于从一组无次序、无规则的实例中推理出以决策树表示的分类规则。构造决策树的目的是找出属性和类别间的关系,用它来预测将来未知类别的记录的类别。它采用自顶向下的递归方式,在决策树的内部节点进行属性的比较,并根据不同属性值判断从该节点向下的分支,在决策树的叶节点得到结论。

5.算法杂货铺——分类算法之决策树(Decision tree) 作者:T2噬菌体 http://www.cnblogs.com/leoo2sk/archive/2010/09/19/decision-tree.html

描述:在前面两篇文章中,分别介绍和讨论了朴素贝叶斯分类与贝叶斯网络两种分类算法。这两种算法都以贝叶斯定理为基础,可以对分类及决策问题进行概率推断。在这一篇文章中,将讨论另一种被广泛使用的分类算法——决策树(decision tree)。相比贝叶斯算法,决策树的优势在于构造过程不需要任何领域知识或参数设置,因此在实际应用中,对于探测式的知识发现,决策树更加适用。

6.机器学习算法之决策树 作者:两棵橘树 http://www.jianshu.com/p/6eecdeee5012

描述:本文简单介绍了决策树算法,该算法虽然简单,但是在很多场景能取得非常好的效果,值得读者一试。另外,从决策树发展出了更为高级复杂的随机森林,如果有兴趣读者可以去深入了解。

7.决策树 作者:bigbigship http://blog.csdn.net/bigbigship/article/details/50991370

描述:决策树(decision tree)是一类常见的机器学习方法。决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。 数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。

8.机器学习的算法(1):决策树之随机森林 作者:LeftNotEasy http://database.51cto.com/art/201407/444788.htm

描述: 决策树这种算法有着很多良好的特性,比如说训练时间复杂度较低,预测的过程比较快速,模型容易展示(容易将得到的决策树做成图片展示出来)等。但是同时,单决策树又有一些不好的地方,比如说容易over-fitting,虽然有一些方法,如剪枝可以减少这种情况,但是还是不够的

9.决策树算法原理(上) 作者:刘建平Pinard http://www.cnblogs.com/pinard/p/6050306.html

描述:决策树算法在机器学习中算是很经典的一个算法系列了。它既可以作为分类算法,也可以作为回归算法,同时也特别适合集成学习比如随机森林。本文就对决策树算法原理做一个总结,上篇对ID3, C4.5的算法思想做了总结,下篇重点对CART算法做一个详细的介绍。选择CART做重点介绍的原因是scikit-learn使用了优化版的CART算法作为其决策树算法的实现。

  1. 决策树算法原理(下) 作者:刘建平Pinard http://www.cnblogs.com/pinard/p/6053344.html

描述:在决策树算法原理(上)这篇里,我们讲到了决策树里ID3算法,和ID3算法的改进版C4.5算法。对于C4.5算法,我们也提到了它的不足,比如模型是用较为复杂的熵来度量,使用了相对较为复杂的多叉树,只能处理分类不能处理回归等。对于这些问题, CART算法大部分做了改进。CART算法也就是我们下面的重点了。由于CART算法可以做回归,也可以做分类,我们分别加以介绍,先从CART分类树算法开始,重点比较和C4.5算法的不同点。接着介绍CART回归树算法,重点介绍和CART分类树的不同点。然后我们讨论CART树的建树算法和剪枝算法,最后总结决策树算法的优缺点。

11.决策树算法介绍及应用 作者:刘昭东 https://www.ibm.com/developerworks/cn/analytics/library/ba-1507-decisiontree-algorithm/

描述:决策树是附加概率结果的一个树状的决策图,是直观的运用统计概率分析的图法。机器学习中决策树是一个预测模型,它表示对象属性和对象值之间的一种映射,树中的每一个节点表示对象属性的判断条件,其分支表示符合节点条件的对象。树的叶子节点表示对象所属的预测结果。

12.机器学习经典算法详解及Python实现–CART分类决策树、回归树和模型树 作者:Adan http://dataunion.org/5771.html

描述:Classification And Regression Tree(CART)是一种很重要的机器学习算法,既可以用于创建分类树(Classification Tree),也可以用于创建回归树(Regression Tree),本文介绍了CART用于离散标签分类决策和连续特征回归时的原理。决策树创建过程分析了信息混乱度度量Gini指数、连续和离散特征的特殊处理、连续和离散特征共存时函数的特殊处理和后剪枝;用于回归时则介绍了回归树和模型树的原理、适用场景和创建过程。个人认为,回归树和模型树可以被看做“群落分类”算法,群落内标签值连续分布,群落间有分界。

13.学习笔记--算法模型(决策树 作者: happybear https://www.douban.com/note/425127655/

描述:决策树(Decision Tree)是一种简单但是广泛使用的分类器。通过训练数据构建决策树,可以高效的对未知的数据进行分类。决策数有两大优点:1)决策树模型可以读性好,具有描述性,有助于人工分析;2)效率高,决策树只需要一次构建,反复使用,每一次预测的最大计算次数不超过决策树的深度。

进阶文章

视频教程

报告

代码

  1. 机器学习经典算法详解及Python实现--决策树(Decision Tree) [http://blog.csdn.net/suipingsp/article/details/41927247]

  2. python实现决策树C4.5算法(数据挖掘算法系列之三) [http://www.clogos.net/cs/datamining/815.html]

  3. 1.10. Decision Trees¶ [http://scikit-learn.org/stable/modules/tree.html]

  4. 机器学习之决策树(Decision Tree)及其 Python 代码实现 [https://juejin.im/entry/58ba32981b69e6006b15ce67]

精品内容

微信扫码咨询专知VIP会员