思考

  1. 什么是决策树?
  2. 信息熵概念?

1. 什么是决策树?

决策树(Decision Tree)是一种基本的分类和回归的方法。本篇主要讨论用于分类的决策树。

分类决策树模型是一种描述对实例进行分类的树形结构。决策树由结点(node)和有向边(directed edge)组成。结点有两种形式:内部结点和叶节点。

内部结点:表示一个特征或属性
叶节点:表示一个类

1.1 决策树直观理解

下面我们通过一个例子来理解决策树,若我们有一下数据,要求通过以下数据,判断某用户是否能够偿还债务。

这里写图片描述

1.2 构建过程简述

用决策树分类,从根节点开始,对实例的某一特征进行测试,根据测试结果将实例分配到其子结点;这时,每一个子结点对应着该特征的一个值。如此递归地对实例进行测试分配,直到达到叶节点。最后将实例分到叶节点的类中。

这里写图片描述

注:对于如何根据特征构建决策树,关注以后的博客更新。

1.3 根据构建方法构建决策树

这里写图片描述

根据数据,我们主观上觉得年收入对于是否能够偿还债务最重要,所以将年收入作为根结点。年收入大于等于97.5千元的可以偿还,对于小于97.5的,再用是否拥有房产进行划分,最后根据婚姻情况进行划分,直到到达叶节点为止。

当构建好一个决策树后,新来一个用户后,可以根据决策好的模型直接进行判断,比如新用户为:无房产、单身、年收入55K,那么根据判断得出该用户无法偿还债务。

2. 信息熵

为了便于以后对信息增益的理解,先给出熵与条件熵的定义:

熵,是表示随机变量不确定性的度量。

如果待分类的事务可能划分在多个分类中,则符号xixi<script type="math/tex" id="MathJax-Element-58">x_i</script>的信息定义为:

I(xi)=log2p(xi)I(xi)=−log2p(xi)
<script type="math/tex; mode=display" id="MathJax-Element-59">I(x_i)=-log_2p(x_i)</script>
熵定义为信息的期望值:
H=i=1np(xi)log2p(xi)H=−∑i=1np(xi)log2p(xi)
<script type="math/tex; mode=display" id="MathJax-Element-60">H = -\sum_{i=1}^{n}p(x_i)log_2p(x_i)</script>

条件熵:

H(Y|X)=H(X,Y)H(X)H(Y|X)=H(X,Y)−H(X)
<script type="math/tex; mode=display" id="MathJax-Element-61">H(Y|X)=H(X,Y)-H(X)</script>

条件熵表示:在已知随机变量X的条件下随机变量Y 的不确定性。X给定条件下Y的条件概率分布的熵对X的数学期望。

这边只简单提了下熵和条件熵,后面特征选择中会用到信息增益与信息增益比
信息增益与信息增益比都是通过熵和条件熵得到
对此不理解的可以查看相关资料,补充一下

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐