一、定义
CART(Classification and Regression Tree)即分类回归树算法。其决策树的生成就是递归的构建二叉决策树的过程。每次划分都把当前样本集划分为两个子样本集。对回归树用平方误差最小化准则,对分类树用基尼指数最小化准则,进行特征选择,生成二叉树。
二、分裂次数
假设某属性存在m个可取值,那么该属性作为分支属性时,生成两个分支的分裂方法共有 2 m − 1 − 1 \displaystyle 2^{m-1} -1 2m−1−1种。如果有n个属性,则分裂方法有 ( 2 m − 1 − 1 ) n \displaystyle \left( 2^{m-1} -1\right)^{n} (2m−1−1)n种。
三、CART分类树与回归树
1、CART分类树
1.1、分类树原理
(1)CART算法在分支时使用Gini系数作为树的生成方式。设 S S S为大小是n的样本集,其分类属性有m个不同的取值,用来定义m个不同分类 C i ( i = 1 , 2 , . . . m ) \displaystyle C_{i}(i=1,2,...m) Ci(i=1,2,...m),则其Gini指数的计算公式为:
G i n i ( S ) = 1 − ∑ i = 1 m ( ∣ C i ∣ S ) \displaystyle Gini( S) \ =\ 1-\sum ^{m}_{i=1}\left(\frac{|C_{i} |}{S}\right) Gini(S) = 1−i=1∑m(S∣Ci∣)
G i n i ( p ) = ∑ k = 1 k p k ( 1 − p k ) = 1 − ∑ k = 1 k p k 2 \displaystyle Gini( p) \ =\sum ^{k}_{k=1} p_{k}( 1-p_{k}) =1-\sum ^{k}_{k=1} p^{2}_{k} Gini(p) =k=1∑kpk(1−pk)=1−k=1∑kpk2
其中, S S S为样本总数量, C i \displaystyle C_{i} Ci