决策树算法以及熵、条件熵、信息增益等整理

来源:互联网 发布:yy网络怎么创建直播间 编辑:程序博客网 时间:2024/06/05 04:38

一、ID3算法(按照信息增益最大为原则)
理解熵、条件熵:
首先有定义是某事件发生的概率小,则该事件的信息量大
熵定义:如果一件事有k种可的结果,每种结果的概率为
pi , i=1,2,…,k
信息熵的公式为:
这里写图片描述
联系之前的定义某事件发生的概率小,则该事件的信息量大
也就是说信息量是描述变量的不确定性的,值越大表示该事件越不确定(也就是概率小嘛),因此,引入其他变量使得这种不确定性降低(也就是条件熵)
条件熵表示在条件X下Y的信息熵,公式为:
这里写图片描述
信息增益:
信息增益=信息熵-条件熵

算法流程理解:
http://blog.csdn.net/gumpeng/article/details/51397737
http://blog.csdn.net/acdreamers/article/details/44661149
缺点:
1.用信息增益选择属性时偏向于选择分枝比较多的属性值,即取值 多的属性。
2.ID3算法涉及到递归,当文本规模很大的时候内存会出问题

二、C4.5
引入了信息增益率的概念。
信息增益率定义:特征A对训练数据集D的信息增益比定义为其信息增益与训练数据D关于特征A的值的熵HA(D)之比
这里写图片描述
三、CART
CART算法首先计算不纯度,然后利用不纯度计算Gini指标。以满意度预警模型为例,计算自变量故障原因的Gini指标时,先按照故障原因可能的子集进行划分,即可以将故障原因具体划分为如下的子集:{1,2,3}、{1,2}、{1,3}、{2,3}、{1}、{2}、{3}、{},共计8(2^V)个子集。由于{1,2,3}和{}对于分类来说没有任何意义,因此实际分为2^V-2共计6个有效子集。然后计算这6个有效子集的不纯度和Gini指标,选取最小的Gini指标作为分裂属性。
不纯度计算公式为:
这里写图片描述

参考链接:
http://blog.csdn.net/x454045816/article/details/44726921

原创粉丝点击