决策树(Decision Tree)算法原理总结(一)

本文介绍了决策树算法的基础,包括ID3和C4.5算法。通过信息熵和信息增益的概念,阐述了决策树构建的过程。ID3算法存在偏向选择取值多的特征等问题,而C4.5通过信息增益比和特征离散化进行改进,同时处理缺失值并采用后剪枝避免过拟合。尽管如此,C4.5仍面临计算效率和只能处理分类问题的挑战。
摘要由CSDN通过智能技术生成

        如同上几篇我们探讨的SVM一样,决策树算法既可以处理分类问题(二分类和多分类),又可以处理回归问题。同时,决策树也广泛的运用在集成算法中,比如随机森林算法。本篇我们沿着决策树算法的发展,来探讨下决策树ID3算法和C4.5算法。CART算法决策树我们下篇单独再探讨。

1)来自借钱的思考
        决策树的原理其实很简单,我们生活中已经在运用这些原理。比如,某一个朋友向你借钱,在你心里一定会有一系列的决策,最后决定是否借钱给他,把你的决策画成一颗树状结构就是决策树了。比如我的借钱决策:
借钱决策
        从上图我们先来认识下决策树的基本结构,决策树由节点(矩形和椭圆)和有向的边(箭头)组成,节点按所处在决策树的位置可以分为根节点,中间节点和叶子节点。其中每个节点代表一个属性,每个分支代表一个决策(规则),每个叶子代表一个结果(分类值或连续值)。

        再回到借钱的栗子上来。假如按照上面的决策树进行借钱决策,一共外借了4次钱,结果有2次按时还了钱,另外2次借的钱打水漂了,损失有点大。于是我调整了下策略,把是否有工作放在首要位置(跟节点)。决策树的结构如下:在这里插入图片描述
于是我又外借了4次钱,结果有3次按时还了钱,只有1次外借的钱打了水漂。对比第一种策略,不还钱的次数减少了,也可以说打水漂的不确定性减少了。所以,只要不确定性有所降低,我们的决策树就有所优化。那么,不确定性又该怎么去度量呢?幸运的是,早在1948年克劳德·爱尔伍德·香农提出了信息熵的概念,专门用来描述事物的不确定性。

2)信息熵(Information Entropy)
        信息熵,它是表示对随机变量不确定的度量,不确定性越大,信息熵越大。随机变量 x x x的信息熵的表达式如下(信息熵表达式的由来可参考本篇博客信息熵部分):
                      H ( x ) = − ∑ x p ( x ) l o g ( p ( x ) ) = − ∑ i = 1 n p ( x i ) l o g p ( x i ) H(x) = -\sum_{x}p(x)log(p(x))=-\sum_{i=1}^{n}p(x_i)logp(x_i) H(x)=xp(x)log(p(x))=i=1np(xi)logp(xi)

       从表达式中可以看出,随机变量的取值个数越多,状态数也就越多,信息熵就越大,混乱程度就越大。当随机分布为均匀分布时,信息熵最大。
        再让我们回到栗子中来。只要不确定性减少,决策策略就得到了优化。因此我们在进行特征选择时,可以选择当前不确定性减少最多的特征(贪心法)。那么该怎么去定义不确定性的减少呢?ID3算法使用信息增益,C4.5使用信息增益率,CART树使用Gini系数。

3)ID3算法
       ID3算法是用信息增益来定义不确定性的减少程度,选择信息增益最大的特征来建立决策树的当前节点。特征A对训练集D的信息增益 g ( D , A ) g(D,A) g(D,A)表达式如下:
                      g ( D , A ) = H ( D ) − H ( D ∣ A ) g(D,A)=H(D)-H(D|A) g(D,A)=H(D)H(DA)

       信息增益具体的算法过程:
输入:训练数据集D合特征A;
输出:特征A对训练数据集D的信息增益 g ( D , A ) g(D,A) g(D,A)

a)计算数据D的信息熵 H ( D ) H(D) H(D)
                      H ( D ) = − ∑ k = 1 K C k D l o g 2 C k D H(D)=-\sum _{k=1}^K\frac{C_k}{D}log_2\frac{C_k}{D} H(D)=k=1KD

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值