1、什么是决策树
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。其图如下所示,
树分为:根结点、分支、结点及树叶四个组成部分。
2、决策树的构造
2.1熵的概念
信息熵的计算:,式中Pi代表不同事件发生的概率,信息熵总为正值,且熵值大小与信息的不确定性成正相关。
2.2决策树的建立规则
依据上述香农信息理论可知,要想不断增加信息的确定性,在每一个结点都应该选取能使当前结点下的分类的不确定性最大的减小,即使信息熵的值最大程度的减小,这样选取的结点才会使信息的不确定性以最大速度降低。
假设有以下数据,根据客户的年龄、收入、是否为学生、信用好坏等推断是否会购买电脑,建立决策树
1、直接看是否买电脑的信息熵:Info(D) = -9/14*log(9/14) - 5/14*log(5/14) = 0.940 bits
2、分别计算每个影响条件做为根结点的信息熵
增量为0.940 - 0.694 = 0.246 bits,类似其它增量分别为:income:0.029, student = 0.151, creadit_rating = 0.048
增量为以age做为根结点时信息增量最大,即能最大程度的减小信息的不确定性
建立后的形式如下
按以下计算方法依次递归重复建立每个分支的决策子树,即可完成整个决策树的建立。
算法运行过程中应该注意的几点:
1、树以代表训练样本的单个结点开始
2、如果样本都在同一个类,则该结点成为树叶,并用该类标号
3、使用基于信息熵的计算方式,选择能够最好将样本分类的发生
4、对于所有的属性均要求为离散的,连续值城需先离散化
5、对于出现在结点上的属性,后续步骤中均无需再考虑之
6、所有结点属于同一类即可停止
7、没有剩余属性可用于分类时停止
其它算法:
C4.5;
classification and regression Trees (CART),
与此相同均为贪心算法且自上而下
决策树的剪枝--避免过度拟合