CART树的构建:
$function\ cart(D)$--$D$为数据
1.如果到了终止条件(如:所有x都相同,或所有y都相同,或到了指定深度),返回叶子节点
2.选择 分割方式,将数据分为左树$D_l$、右树$D_r$ 2部分
3.$cart(D_l),cart(D_r)$
分割方式(cart的分割方式不固定,此处采用decision stump):
选择所有decision stump中,综合不纯度最小的
用impurity(不纯度)衡量单个数据集
方式1:
将这个节点当作叶子节点,考虑此叶子节点上的错误
regression -$impurity = \frac{1}{N}\sum_i (y_i-\overline{y})$
classification-$impurity = \frac{1}{N}\sum_i [y_i\neq y^*]$
Gini Index(考虑到了其他分类):
$impurity = 1-\frac{1}{K}\sum_k {(\frac{\sum_i [y_i=k]}{N})}^2$
pruning:
完全长成的树,$E_{in}=0$,容易overfit;考虑加入regulization,一个方法是限制叶子节点的数量
要列出所有的树,是不可能的,考虑在以下树中做选择:
1.$G^0$为完全长成的树
2.$G^i$为在$G^{i-1}$的基础上,去掉一个叶子节点的树(在去掉一个节点的树中选取$E_{in}$最小)
missing data:
比如体重为空,选择用身高代替
CART中,每个分类节点都有一个候选分割列表(这些分割列表分割后和原分割相差很小)
时间: 2024-10-02 23:06:24