首页 > 代码库 > 《机器学习技法》---CART算法

《机器学习技法》---CART算法

1 决策树模型的数学表达形式

决策树模型画出图很简单。那么它的数学表达形式是怎样的呢?这里介绍递归形式:

技术分享

其中,G(x)表示决策树对应的函数,b(x)表示分叉的规则,Gc(x)是子树的模型。

 

2 一般决策树生成算法的框架

技术分享

即,学习划分规则b(x),然后把数据按照b(x)划分为C部分,对每一部分递归地生成子树。注意递归在一定条件停止,直接返回一个g(x)。

 

事实上,不同的决策树算法,都是这个基本的框架。不同的地方在于这四个部分的具体定义是不同的:

技术分享

 

3 CART算法

CART算法中,框架中的四个部分分别定义为:

number of branches:每次划分的分支规定为2。也就是CART决策树是一个二叉树。

branching criteria:选择一种划分方式,使得划分后两边数据集不纯度最低(不确定性小):

技术分享

base hypothesis:最底层的g(x)是一个常数。

termination criteria:节点中样本个数小于阈值,或基尼指数小于阈值,或没有更多特征。

 

回归的不纯度定义为:

技术分享

分类的不纯度定义为:

技术分享

也称为基尼指数。其中,K是总共的类别数。

 

因此,整个算法就是:

技术分享 

《机器学习技法》---CART算法