决策树、随机森林

决策树

内部结点表示特征,叶子结点预测值

如何选择结点的特征:信息增益

根据信息增益方式的不同,决策树分为ID3、C4.5、CART

ID3决策树

信息熵度量纯度,纯度越高则熵越低。
10猫0狗或者10狗0猫,纯度最高,熵为0。
5猫5狗最不纯,熵为1。
在这里插入图片描述
pk表示第k类的比例。比如10个样本中有猫和狗,p1表示猫的比例,p2表示狗的比例。
在这里插入图片描述
在这里插入图片描述
信息增益:特征划分之前的熵减去划分之后的熵,划分之后的熵是每个类别的熵的加权之和。
在这里插入图片描述
选择信息增益最大的特征
在这里插入图片描述

C4.5决策树

极端例子:某特征的取值非常多,但每种取值只有一个样本,则熵为0(纯度很高),信息增益最大。
在这里插入图片描述
缺点:对可取值数目少的属性有所偏好。
改进:先用ID3,再从ID3选出的决策树中用C4.5选。
在这里插入图片描述

CART决策树

Classification and Regression Tree,分类和回归树。ID3和C4.5只能解决分类问题。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
决策树系列【4】 基尼指数cart算法(代码已同步到github)
注意基尼指数中,p1和p2都要计算。如果用pk(1-pk)来算,一般要乘以2,比如p1(1-p1) = 3/5 * 2/5,p2(1-p2) = 2/5 * 3/5,他们是对称的关系。

可以看到CART是一个二叉树,如果特征是连续取值,则按照大于小于来分。如果特征有多个离散取值,比如0,1,2,则特征按是0和不是0,是1和不是1,是2和不是2来分。

CART剪枝

α是一个超参数,有点像正则化系数。α越大,对后项的惩罚越大,此时叶结点数T必须小。
请添加图片描述
C(Tt)是剪枝前的,C(t)是剪枝后的,剪枝后根结点变成了叶子结点,所以|T|=1,只剩下一个α。
α=0时,C(t)为什么大于C(Tt)?是因为根结点的熵一定大于分支结点(特征拆分是熵减的过程)。
令Ca(Tt) = Ca(t),是要找出一个临界的α,此时剪完之后损失不变,但结点少了(结点少意味着模型更简单)
请添加图片描述
CART剪枝算法:对每一个内部结点(非叶子结点),求出相应的α。选择最小的α,剪枝,得到新的决策树T1。如果T1不是只有根结点(即还可以剪枝),对T1重复上面的步骤,得到T2,T3…最后对子树序列交叉验证选出最优子树。
请添加图片描述
参考李航的统计学习方法

集成学习

boosting,bagging(并行式的集成学习)

随机森林

bagging采用自助采样法bootstrap sampling:
在这里插入图片描述
训练集中有36.8%的样本不会被采到,可作为验证集。

随机森林以决策树为基学习器,在bagging的基础上,引入了随机属性选择
先从该结点的属性集合中随机选择一个包含k个属性的子集,再从这个子集中选择一个属性用于划分。若k=d,传统决策树构建;k=1随机选择一个属性划分。一般情况下k=log d,底数为2

随机森林的训练效率高于bagging(从子集选取特征,计算加快),泛化误差低于bagging(随机选取特征,各个决策树间差异变大,更不容易过拟合)。

  • 12
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值