决策树

来源:互联网 发布:淘宝网创立时间 编辑:程序博客网 时间:2024/06/06 18:31

决策是机器学习中分类算法中一种,因为经实验样本训练出一个类似树形的决策规则而由此得名。这种分类算法虽然简单,但是在人类的模式识别中也经常用到,比如给出一个矩形,我们首先判断这是一个平面图形,进而判断这个图形每两条边平行,并且长和宽相等,最终得出矩形。这个算法有一个缺点,就是不能自学习,即只能识别已经学习到的模式,对于新的模式,此算法很可能无法正确做出判断。

在讲到决策树之前,给出信息熵及相关的一些概念,这些主要用于如何挑选局部最优的决策规则,当然还有其它一些衡量决策规则的方法,在此不一一列举,有兴趣的读者可以自行查找相关论文。

1 信息熵

1.1 信息熵的定义:

信息论中的信息熵的数学表达式H(x) = - E[log_2 P(x)] = E[- log_2 P(x) ] ,其中x是随机变量,实际中只能取x_1,x_2,... x_n这样至多可数个观察值,从公式可以知道,信息熵实际是g(x)=-log_2 P(x)的数学期望,它的意义是指观察者对某一个事件结果的未知程度。信息熵越大,对观察者来说结果的不确定越大,从中获取到有用的信息越没有价值;反之,信息熵越小,对观察者来说结果的不确定越小,从中获取到有用的信息越有价值。举个例子,比如现在要猜一个字,如果主持人提示说:

1 这个字有15个笔划

2 这个字是左右结构

3 这个字是''字旁

听到这些,你可以还是不知道这个字是什么,也就是说这个字很难猜,或者从这三条信息中无法获得明确的结果,这以认为三条信息价值较小。

但是如果主持人提示说:

1 这个是有15个笔划

2 这个字是火字旁

3 这个字的英文是'Entropy'

听到这些,你立马会想到''字了,以上三条给出的信息提示很明确,很容易就确定是熵字,因此以上三条信息价值很大。


1.2 信息熵的特性:

1 非负性:

H(x) > 0



2 下面引入几个和熵有关的计算

2.1 联合熵:

x , y 是两个随机变量,则这两个随机变量的联合熵

H(x,y) = - E[ log_2 P(x,y)] = E[ -log_2 P(x,y)] = \SUM{ - P(x,y) * log_2 P(x,y) }


2.2 条件熵

x, y 是两个随机变量,见这两个随机变量的条件熵

H(x|y) = - E[ log_2 P(x|y)] = E[ -log_2 P(x|y)] = \SUM { - P(x,y) * log_2 P(x|y) }


信息熵,联合熵,以及条件熵之间的关系:

H(x,y) – H(x) = H(y|x)

上式可这样理解:引入xy不确定性可看做,xy两个变量的不确认性中扣除x自身的不确定性。

由上式可以推论:

H(x,y) = H(y|x) + H(x) ,由于H(x) >= 0 ,可得

H(x,y) > = H(y|x)

意思是说:明确部分变量后的不确定性,比什么都不知道的不确定性要小。(虽然看似一句废话,但是在后面还是很有用的)

0 0