我将CART独立于其余经典决策树算法的缘由是CART相对来讲较为复杂。由于它不单单能够做为分类树,还能够做为回归树。算法
对于对于CART分类树,这就和咱们以前所说的《经典决策树算法》中的ID3与C4.5很是相似,可是与他们不一样的是,咱们在CART中并不采用信息增益或者是信息增益比来做为决策条件,而是采用了一种叫作基尼指数的衡量标准。这里咱们不得不提到一个新的衡量特征好坏的方式:基尼指数。机器学习
基尼指数公式表达的是任取两个样本,这两个样本不相同的几率。宏观表达的是描述一个集合的混乱程度。基尼指数越大,表示这个样本集合D越混乱。这和熵的做用有些相似,但这仅仅是一个指数,可以判断大小,但不能像熵同样线性的量化集合中的混乱程度。 咱们也很容易发现,基尼指数是一个(0,1)的数。 咱们还有一个特征条件下的集合基尼指数定义: 学习
算法中止与节点样本个数小于阈值,或者是基尼指数小于阈值(样本基本属于同一类),或者没有更多特征。 CART分类树生成算法比较简单。就是将分配原则设定成了基尼指数。固然,咱们仍是最主要关注基尼指数的计算过程。我介绍个例子来辅助理解计算过程。3d
CART生成回归树的算法是用来根据已有数据生成一个回归树,具体算法以下:cdn
这个算法比前面的那些算法要更加复杂一点,有不少公式。要想理解这个算法的做用,咱们得先从感性上理解这个算法是作什么的。 咱们考虑最简单的最小二乘回归,CART要求咱们将全部输入数据都看成在二维的平面上若干个数据点。以x轴为划分依据(也就是最后的回归树的分界线是x的值,x大于或小于某个值会判断成什么)。blog
放个例子辅助理解:it
李航《统计学习方法》 周志华《机器学习》io