背景:个人对挖掘算法不太了解,学习过程中看到有C4.5算法、CART算法等,看起来都是一样的决策树,不知其区别,所以网络上搜索学习,备忘如下:
从决策树开始介绍,该博文不错:
算法杂货铺——分类算法之决策树(Decision tree)
决策树在决策过程中,选择根节点属性的度量方法(分裂规则)有多种,一般使用自顶向下递归分治法,并采用不回溯的贪心算法;
我们看到的各种决策树算法,其实主要是因为采用的度量方式的不同而得到的。
下面介绍基于不同的度量方法的三种算法;
信息增益越大越好(ID3算法)、信息增益率越大越好(C4.5算法)、Gini增益越大越好(CART算法)
首先需要了解下信息熵、信息增益的概念,因为度量方法是基于此的;请见:
信息熵(Entropy)、信息增益(Information Gain)
这些算法基于
奥卡姆剃刀原理(若无必要,勿增实体),即越是小型的决策树越优于大的决策树;
ID3算法请见:
归纳决策树ID3(Java实现)
C4.5算法请见:
C4.5决策树、
数据挖掘十大经典算法(1):C4.5算法
CART算法请见:
CART算法简介
--------------------
CART 分类回归树Classification and Regreesion Tree