决策树的基础知识

决策树的一些概念

决策树是一种基本的分类与回归方法。决策树学习通常包括3个步骤:特征选择、决策树的生成、剪枝。
说通俗点就是,根据一些选择条件,分出多种结果
比如说有一家人,你要判断谁爱玩电脑游戏,就可以通过年龄和性别这两个选择条件
在这里插入图片描述
这里有一个注意的点,这些条件的顺序不是随意的,第一个条件理论上应该是最优的,就是它的筛选能力是最强的,筛选能力是最强的,这个概念是很抽象的,所以接下来就是一些具体的生成条件的策略。

决策树的生成

选择的条件(就是上面的根据年龄,性别这些就是条件),以下称之为特征。
特征的选择准则为:信息增益,信息增益率,基尼系数。这些都是一个数值,以此我们可以决定第一个特征,第二个特征…

这是一个前置知识,了解的同学可以选择直接跳过。
熵表示随机变量不确定性的度量,是度量样本集合纯度最常用的一种指标。
比如:A集合:{1,1,1,1,2} B集合:{1,2,3,4,5},B集合的纯度就比较低,也就是里面的东西比较杂,对应的熵值就比较大。
越混乱,熵值就越大,结果就越不确定
第一个特征选择,我有两种设计方案:
在这里插入图片描述
很显然左边的特征选择的更好,因为它的熵值更小,混乱程度为0。
熵值的计算:在这里插入图片描述
pk表示的是样本中第k类样本所占比例

信息增益

信息增益就是D本身的熵与特征A给定条件下D的条件熵之差
要优先选择信息增益大的特征,它们具有更强的分类能力。由此生成决策树,称为ID3算法。
下面给定数据集我们来计算一下信息增益,给定14天中每天的天气,气温,湿度,是否有风,这一天是否打球。
在这里插入图片描述
依据这个数据集,特征选择有四种策略:
在这里插入图片描述
在这里插入图片描述
选择outlook为特征时的熵为:每个分支的概率*这个分支的熵
  5 14 ∗ 2 5 l o g 2 2 5 + 4 14 ∗ 0 + 5 14 ∗ 2 5 l o g 2 2 5 = 0.693   \ \frac{5}{14} *\frac{2}{5}log_2\frac2 5+\frac{4}{14}*0+\frac{5}{14}*\frac{2}{5}log_2\frac2 5=0.693 \  14552log252+1440+14552log252=0.693 
信息增益为0.94-0.693=0.247,使得信息增益最大的特征作为第一个特征。

信息增益率

当某个特征具有多种候选值时,信息增益容易偏大,造成误差。引入信息增益率可以校正这一问题。
信息增益率为信息增益与数据集D的熵之比,同样是优先选择信息增益率最大的,由此生成决策树,称为C4.5算法。

基尼指数

基尼指数是另一种衡量不确定性的指标,它不再需要计算熵。
G i n i ( D ) = ∑ k = 1 K p k ( 1 − p k ) = 1 − ∑ k = 1 K p k 2 Gini(D)=\sum_{k=1}^{K}p_k(1-p_k)=1-\sum_{k=1}^{K}p_k^2 Gini(D)=k=1Kpk(1pk)=1k=1Kpk2
优先选择基尼指数最小的特征,由此生成决策树,称为CART算法

决策树剪枝

当特征选择的太多,树过于庞大的时候,会出现过拟合的问题,就是上面打球的例子,我选择天气,气温,湿度,是否有风来作为特征,如果我再选择id,这个id选了是没有用的,并且会影响预测结果。
所以需要对决策树简化,砍掉多余的分支,提高泛化能力。
剪枝分为预剪枝和后剪枝:
预剪枝就是在生成决策树的过程中就剪枝,就是可以加一些限定,比如信息增益必须大于0.2,否则就剪掉,深度不能超过5,否则就剪掉,叶子树不能超过10。

后剪枝就是在树建好后才去剪,一般情形下后剪枝决策树的欠拟合风险很小,泛化能力往往优于预剪枝决策树,但时间开销通常较大。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值