机器学习(Machine Learning)笔记系列6:决策树(decision tree)与随机森林(random forest)

决策树

  分类决策树模型是一种描述对实例进行分类的树形结构。决策树由结点(node)和有向边(directed edge)组成。结点有两种类型:内部结点(internal node)和叶结点(leaf node)。内部结点表示一个特征或属性,叶结点表示一个类。
  用决策树分类,从根结点开始,对实例的某一特征进行测试,根据测试结果,将实例分配到其子结点;这时,每一个子结点对应着该特征的一个取值。如此递归地对实例进行测试并分配,直至达到叶结点。最后将实例分到叶结点的类中。
  决策树学习算法包含特征选择、决策树的生成与决策树的剪枝过程。由于决策树表示一个条件概率分布,所以深浅不同的决策树对应着不同复杂度的概率模型。决策树的生成对应于模型的局部选择,决策树的剪枝对应于模型的全局选择。决策树的生成只考虑局部最优,相对地,决策树的剪枝则考虑全局最优。决策树学习常用的算法有ID3、C4.5与CART。

一些重要的概念

信息熵Entropy

含义

  用来衡量信息不确定性的指标,其中不确定性是指一个事件出现不同结果的可能性。

数学定义

(1) H ( X ) = − ∑ i = 1 n P ( X = i ) log ⁡ 2 P ( X = i ) \begin{aligned} H(X)=-\sum_{i=1}^{n} P(X=i) \log _{2} P(X=i)\tag{1} \end{aligned} H(X)=i=1nP(X=i)log2P(X=i)(1)

条件熵Conditional Entropy

含义

  是通过获得更多的信息来减小不确定性。知道的信息越多,信息的不确定性越小。

数学定义

(2) H ( X ∣ Y ) = ∑ v ∈ v a l u e s ( Y ) P ( Y = v ) H ( X ∣ Y = v ) \begin{aligned} H(X | Y)=\sum_{v \in v a l u e s(Y)} P(Y=v) H(X | Y=v)\tag{2} \end{aligned} H(XY)=vvalues(Y)P(Y=v)H(XY=v)(2)
(3) H ( X ∣ Y = v ) = − ∑ i = 1 n P ( X = i ∣ Y = v ) log ⁡ 2 P ( X = i ∣ Y = v ) \begin{aligned} H(X | Y=v)=-\sum_{i=1}^{n} P(X=i | Y=v) \log _{2} P(X=i | Y=v)\tag{3} \end{aligned} H(XY=v)=i=1nP(X=iY=v)log2P(X=iY=v)(3)

信息增益Information Gain

含义

  表示得知特征X的信息而使得类Y的信息不确定性减少的程度

数学定义

(4) g ( X , Y ) = H ( X ) − H ( X ∣ Y ) = H ( Y ) − H ( Y ∣ X ) \begin{aligned} g(X, Y)=H(X)-H(X | Y)=H(Y)-H(Y | X)\tag{4} \end{aligned} g(X,Y)=H(X)H(XY)=H(Y)H(YX)(4)

补充

  当熵和条件熵中的概率由数据估计(特别是极大似然估计)得到时,所对应的熵与条件熵分别称为经验熵(empirical entropy)和经验条件熵(empirical conditional entropy)

示例

https://cdn.mathpix.com/snip/images/bE4BSzn-FgT3Q8Le57KcJ1u4g3c1WHad_RZqDCv3uzw.original.fullsize.png
  如图,有以上数据集D,根据信息D选择最优特征,特征 A 1 A_1 A1年龄, A 2 A_2 A2有工作, A 3 A_3 A3有自己的房子, A 4 A_4 A4贷款情况,类别 Y Y Y
  Step 1:计算经验熵 H ( D ) H(D) H(D)
(5) H ( D ) = − 9 15 log ⁡ 2 9 15 − 6 15 log ⁡ 2 6 15 = 0.971 \begin{aligned} H(D)=-\frac{9}{15} \log _{2} \frac{9}{15}-\frac{6}{15} \log _{2} \frac{6}{15}=0.971\tag{5} \end{aligned} H(D)=159log2159156log2156=0.971(5)
  Step 2:计算计算各特征对数据集D的信息增益
(6) g ( D , A 1 ) = H ( D ) − [ 5 15 H ( D 1 ) + 5 15 H ( D 2 ) + 5 15 H ( D 3 ) ] = 0.971 − [ 5 15 ( − 2 5 log ⁡ 2 2 5 − 3 5 log ⁡ 2 3 5 ) + 5 15 ( − 3 5 log ⁡ 2 3 5 − 2 5 log ⁡ 2 2 5 ) + 5 15 ( − 4 5 log ⁡ 2 4 5 − 1 5 log ⁡ 2 1 5 ) ] = 0.971 − 0.888 = 0.083 \begin{aligned} \begin{aligned} g\left(D, A_{1}\right)=& H(D)-\left[\frac{5}{15} H\left(D_{1}\right)+\frac{5}{15} H\left(D_{2}\right)+\frac{5}{15} H\left(D_{3}\right)\right] \\=& 0.971-\left[\frac{5}{15}\left(-\frac{2}{5} \log _{2} \frac{2}{5}-\frac{3}{5} \log _{2} \frac{3}{5}\right)\right.\\ &+\frac{5}{15}\left(-\frac{3}{5} \log _{2} \frac{3}{5}-\frac{2}{5} \log _{2} \frac{2}{5}\right)+\frac{5}{15}\left(-\frac{4}{5} \log _{2} \frac{4}{5}-\frac{1}{5} \log _{2} \frac{1}{5}\right) ] \\=& 0.971-0.888=0.083 \end{aligned}\tag{6} \end{aligned} g(D,A1)===H(D)[155H(D1)+155H(D2)+155H(D3)]0.971[155(52log25253log253)+155(53log25352log252)+155(54log25451log251)]0.9710.888=0.083(6)
(7) g ( D , A 2 ) = H ( D ) − [ 5 15 H ( D 1 ) + 10 15 H ( D 2 ) ] = 0.971 − [ 5 15 × 0 + 10 15 ( − 4 10 log ⁡ 2 4 10 − 6 10 log ⁡ 2 6 10 ) ] = 0.324 \begin{aligned} \begin{aligned} g\left(D, A_{2}\right) &=H(D)-\left[\frac{5}{15} H\left(D_{1}\right)+\frac{10}{15} H\left(D_{2}\right)\right] \\ &=0.971-\left[\frac{5}{15} \times 0+\frac{10}{15}\left(-\frac{4}{10} \log _{2} \frac{4}{10}-\frac{6}{10} \log _{2} \frac{6}{10}\right)\right]=0.324 \end{aligned}\tag{7} \end{aligned} g(D,A2)=H(D)[155H(D1)+1510H(D2)]=0.971[155×0+1510(104log2104106log2106)]=0.324(7)
(8) g ( D , A 3 ) = 0.971 − [ 6 15 × 0 + 9 15 ( − 3 9 log ⁡ 2 3 9 − 6 9 log ⁡ 2 6 9 ) ] = 0.971 − 0.551 = 0.420 \begin{aligned} \begin{aligned} g\left(D, A_{3}\right) &=0.971-\left[\frac{6}{15} \times 0+\frac{9}{15}\left(-\frac{3}{9} \log _{2} \frac{3}{9}-\frac{6}{9} \log _{2} \frac{6}{9}\right)\right] \\ &=0.971-0.551=0.420 \end{aligned}\tag{8} \end{aligned} g(D,A3)=0.971[156×0+159(93log29396log296)]=0.9710.551=0.420(8)
(9) g ( D , A 4 ) = 0.971 − 0.608 = 0.363 \begin{aligned} g\left(D, A_{4}\right)=0.971-0.608=0.363\tag{9} \end{aligned} g(D,A4)=0.9710.608=0.363(9)
  Step 3:最后,比较各特征的信息增益值。由于特征 A 3 A_3 A3(有自己的房子)的信息增益值最大,所以选择特征 A 3 A_3 A3 作为最优分类特征。

决策树的生成

ID3

在这里插入图片描述

C4.5

在这里插入图片描述

决策树总结

在这里插入图片描述

随机森林

  集成学习
  同时训练多个决策树,预测的时候,综合考虑多个结果做预测。例如取多个结果的众数,均值等
  随机性体现在两点:
    1. 从原来的训练数据集(带放回)取一个子集作为森林中某一个决策树的训练数据集
    2. 每一次选择分叉的特征时,限定为在随机选择的特征的子集中寻找一个特征
  两个优势:
    1. 消除了决策树容易过拟合的缺点
    2. 见笑了预测的variance;预测值不会因为训练数据的小变化而剧烈变化

作业代码:https://github.com/JackUCASer/decision-tree-and-random-forest

参考
[1]. 李航. 统计学习方法[M]. 2012.
[2]. 贪心科技-机器学习特训营课程

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值