决策树之分类树与回归树

决策树(Disicion tree)

 A decision tree is a flowchart-like structure in which each internal node represents a "test" on an attribute (e.g. whether a coin flip comes up heads or tails), each branch represents the outcome of the test, and each leaf node represents a class label (decision taken after computing all attributes). The paths from root to leaf represent classification rules.

这是维基百科中的描述。决策树就是一种流程图似的结构。在这个流程图中,每个内部节点(不是叶节点) 代表一个对样本属性大的测试。每个分支代表测试的不同结果。叶节点代表分类的结果。从根到叶的过程代表分类规则。

说人话,就是如下图所示 ,当样本进入决策树的根节点时,判断样本是否符合节点的条件,符合就进入一个分支,不符合就进入另一个分支。依次下去,当达到叶节点的时候,决策树流程结束,那么样本落入那个叶节点,则叶节点的类别就是样本的类别。

决策树的分类

根据决策树预测输出结果的不同,决策树可以分为分类决策树树以及回归决策树

当预测结果为类别时,决策树被称为分类回归树,当预测结果为一个实数时,决策树为回归决策树。

 

  • Classification tree analysis is when the predicted outcome is the class to which the data belongs.
  • Regression tree analysis is when the predicted outcome can be considered a real number

决策树的结构已知的情况下,我们可以很轻松的对样本的类别做出判断。那么怎么确定决策树的结构?

决策树的生成

决策树的生成最重要的是:如何选择划分点?如何决定叶节点的输出值?

我们先给出决策树的基本学习方法:

我们可以看到算法最重要的一步是第8步如何确定最优的划分属性,也就是刚开始我们所说的决策树最重要的因素的第一个,如何选择划分点。

下面的图片给出了分类决策树的3种方法,当然不只这三种,比如xgboost中就自己定义了新的划分方式。

我们这里以 ID3这种方式来简述一下,其他划分算法同理。

ID3利用了信息熵的概念。信息熵是度量样本集合纯度最常用的指标。下面关于信息熵的介绍摘自周志华教授的《机器学习》。

就是先计算没有按照特征A划分的情况下集合的信息熵(混乱程度),再计算按特征A的所有取值(假设v个不同的取值)划分成v个不同的集合。利用(4.2)式计算,是没划分之前混乱还是划分之后混乱。

回归决策树的分类方法

 

 

摘自李航教授的《统计学习方法》

对于回归树用平方误差和最小。简单来书就是,遍历所有特征的所有取值,找到某个特征的某个取值,使得预测误差的平方和最小。这其实并不容易,所以很多的算法采取的是贪心算法。由于目标函数是凸函数,可以采用关于梯度的算法,以此来提高效率,当然这也损失了精确度。

这样我们就解决了如何划分的问题,下面解决叶节点得分的问题。

叶节点得分的问题有多种方式。在分类树中,可以选取决策树叶节点的样本中所有种类中,样本最多的一个种类作为叶节点的得分。对于回归树,可以把叶节点所有样本的标签的平均值作为叶节点的得分。诸如这种算法还是有很多的方式可以选择。

决策树的剪枝

剪枝是决策树应对过拟合风险的主要手段。

决策树的剪枝基本策略有:预剪枝,后剪枝

预剪枝:在决策树生成的过程中,对每个结点在划分前先进行估计,若当前结点的划分不能带来决策树泛化性能的提升,则停止当前结点的划分。

后剪枝:在决策树生成后,然后自底向上地对非叶节点进行考察,若将该结点对应的子树替换为叶节点能带来决策树泛化性能的提升,则将该子树替换为叶节点。

摘自周志华教授《机器学习》。

 

 

  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值