Decision tree

Decision Tree

是一种用于分类和回归的监督学习方法,目标是创建一个模型,通过学习从数据特性推断出的简单决策规则来预测目标变量的值。
优点

  • 易于理解和解释,决策树可以被可视化。
  • 几乎不需要数据准备,其他技术通常需要数据规范化,但是请注意,这个模块不支持丢失值,需要创建虚拟变量并删除控制。
  • 使用决策树的成本是用于训练树的数据点数量的对数。
  • 能够处理多输出问题。
  • 使用白盒模型,如果给定的情况在模型中是可观察到的,则对该条件的解释很容易用布尔逻辑解释。
  • 即使生成数据的真实模型在一定程度上违反它的假设,它也能执行的很好。
    缺点
  • 决策树学习可能会创建过于复杂的树,无法很好的概括数据,这叫做过度拟合。为了避免这个问题,需要一些机制,如修减少,在叶子结点设置所需要的最小样本数量或设置做大深度。
  • 决策树可能不稳定,因为数据中的微小变化可能导致完全导致不同的树,在集成中使用决策缓解这个问题。
  • 有些概念很难学习,因为决策树不容易表达他们,比如XOR,奇偶性或多路复用器问题。
  • 如果某些类占主导地位,决策树学习者就会创建有偏见的树,因此,建议在与决策树匹配之前先平衡数据集。

基本结构

  • 决策树是一种树型结构,其中每个内部结点表示在一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。
  • 决策树学习是以实例为基础的归纳学习。
    决策树采用的是自顶向下的递归方法,器基本思想是以信息熵为度量构造一颗熵值下降最快的树,到叶子结点处的熵值为零,此时每个叶节点的实例都属于同一类。
  • 计算数据集D的经验熵 H ( D ) = − ∑ k = 1 K C k D l o g ∣ C k ∣ D H(D) = -\sum_{k=1}^K\frac{C_k}{D}log\frac{|C_k|}{D} H(D)=k=1KDCklogDCk
    计算特征A的信息增益:g(D, A) = H(D) - H(D|A)
    选择信息增益最大的特征作为当前的分裂特征。
    H ( D ∣ A ) = − ∑ i , k p ( D k , A i ) l o g p ( D k ∣ A i ) = − ∑ i , k p ( A i ) p ( D k ∣ A i ) l o g p ( D k ∣ A i ) = − ∑ i = 1 n ∑ k = 1 K p ( A i ) p ( D k ∣ A i ) l o g p ( D k ∣ A i ) = − ∑ i = 1 n p ( A i ) ∑ k = 1 K p ( D k ∣ A i ) l o g p ( D k ∣ A i ) = − ∑ i = 1 n D i D ∑ k = 1 K ∣ D i k ∣ D i l o g D i k D i \begin{aligned} H(D|A) &= -\sum_{i, k}p(D_k, A_i)logp(D_k|A_i)\\ & = -\sum_{i,k}p(A_i)p(D_k|A_i)log p(D_k|A_i) \\ & = -\sum_{i=1}^n\sum_{k=1}^Kp(A_i)p(D_k|A_i)logp(D_k|A_i)\\ & = -\sum_{i=1}^np(A_i)\sum_{k=1}^Kp(D_k|A_i)logp(D_k|A_i) \\ & = -\sum_{i=1}^n\frac{D_i}{D}\sum_{k=1}^K\frac{|D_{ik}|}{D_i}log\frac{D_{ik}}{D_i} \end{aligned} H(DA)=i,kp(Dk,Ai)lo
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值