参考资料
李航“统计学习方法”
彼得哈灵顿“机器学习实战”
一,决策树模型
(一)原理
分类决策树模型是一种描述对实例进行分类的树状结构,由结点和有向边组成结点有两种类型:内部结点和叶结点,内部结点表示对一种特征的判断,叶结点表示一个类。用决策树分类,从根结点开始,对实例的某一特征进行测试,根据测试结果,将实例分配到子结点,此时,该特征的每一个取值对应一个子结点,递归地对实例进行测试并分配,直到到达叶结点。最后将实例分到叶结点的类中。
举例:下图的邮件分类系统,长方形代表判断模块,椭圆形代表终止模块,表示已经得出结论首先判断域名地址是否为myEmployer.com,是则划分到“无聊时需要阅读的邮件”中,否则再判断邮件是否包含单词“曲棍球”,包含则分到“需要及时处理的朋友邮件”,不包含将邮件划分到“无需阅读的垃圾邮件”。
二,决策树学习
决策树学习通常包含三个步骤:特征选择,决策树的生成和决策树的修剪。
(一)特征选择
决策树学习的算法通常是一个递归地选择最优特征,并根据特征对训练数据进行分割,使得对各个子数据集有一个最好的分类的过程。通常特征选择的准则是信息增益或信息增益比。
1信息增益
(1)熵和条件熵的定义。
熵的英文表示随机变量不确定性的度量。
设X是一个取有限个值的离散随机变量,其概率分布为
,I = 1,2,...,N
随机变量X的熵定义为:
熵越大,随机变量的不确定性就越大。
设有随机变量(X,Y),其联合概率分布为
,i = 1,2,...,n; J = 1,2,...,米
条件熵 H(Y | X)表示已知随机变量X的条件下随机变量Y的不确定性,定义为X给定条件下Y的条件概率分布的熵对X的数学期望
(2)信息增益定义
信息增益表示由于特征甲使得对数据集d的分类的不确定性减少的程度定义为集合d的熵H(d)与特征甲给定条件下d的条件熵H(d | A)。之差,即
显然,对于数据集d而言,不同的特征往往具有不同的信息增益。根据信息增益准则,对训练数据集d,计算其每个特征的信息增益,并比较大小,选择信息增益最大的特征。
(3)算法描述
设训练数据集为d,| d |表示其样本容量,即样本个数设有ķ个类。,K = 1,2,...,K,| CK |为属于类
。的样本个数根据特征甲的取值将d划分为ñ个子集
,
为
的样本个数。子记集
中属于类
的样本的集合为
即
,
为
的样本个数。
2.信息增益比
以信息增益作为划分训练数据集的特征,存在偏向于选择取值较多的特征的问题(取值多,分类细,熵较小)。使用信息增益比可以对这一问题进行校正。
定义
特征甲对训练数据集d信息的增益比定义为其信息增益
与训练数据集d关于特征甲值的熵的
之比,即
,其中
,n是特征A取值的个数。
(二)决策树的生成
1.ID3算法
ID3算法的核心:在决策树各个结点上应用信息增益准则选择特征,递归地构建决策树。
2.C4.5的生成算法
与ID3算法相似,在生成的过程中,使用信息增益比选择特征。