决策树学习

相关背景知识 

     目前对数据挖掘的研究主要集中在分类、聚类、关联规则挖掘、序列模式发现、异常和趋势发现等方面, 其中分类挖掘主要用于预测和决策。分类的目的是提出一个分类函数或分类模型(也叫做分类器),该模型能把数据库中的数据映射到给定类别中的某一个。完成分类任务的方法有决策树学习方法、神经网络方法、统计学方法,其中决策树方法以其速度快、精度高、生成的模式简单等优点,在数据挖掘中受到许多研究者和软件公司的关注。

    示例学习(leaming from examples)是机器学习较为成熟的重要分支。示例学习是通过一系列不太复杂的局部逼近来模拟复杂的目标函数,并且在学习的过程中不会损失训练样本例中蕴涵的任何信息。它的目的就是从某一概念已知的两类或者多类例子集中归纳找出描述覆盖一类而排斥其余类的一般规则。因此,示例学习也称作概念获取(concept acquisition)。按照知识表示形式示例学习主要分为两大类:产生式规则表示形式(AQ15)和决策树表示形式(ID3)。

决策树

    决策树学习是一种逼近离散值目标函数的方法,这种方法将从一组训练数据中学习到的函数表示为一棵决策树。决策树叶子为类别名,其他的结点由实体的特征组成,每个特征的不同取值对应一个分枝。若要对一个实体分类,从树根开始进行测试,按特征的取值向下进入新结点,对新结点进行测试,过程一直进行到叶结点,实体被判为属于该叶子结点所标记的类别。它可以表示任意的离散函数和离散特征,可以将实例分成2个或多个类。

经典决策树算法(ID3)

由J. Ross Quinlan提出起源于CLS(Concept Learning System);

借用信息增益(information gain),用来作为特征判别能力的度量;

ID3算法能得出结点最少的决策树。

建树算法
    1.对当前例子集合计算各特征的增益信息,选择增益信息最大的特征Ak;
    2.把在取值相同的例子归为同一子集;
    3.对既含正例又含反例的子集,递归调用建树算法;
    4.若子集仅含正例或反例,对应的分枝标住“+”或“–”,返回调用处。

ID3主算法
    1.从训练集中随机选择一个即含正例又含反例的子集(window);
    2.用上面的建树算法对当前的window形成一课决策树;
    3.对训练集(except window)中的例子用所得到决策树进行判定,找出错判的例子;
    4.若存在错判的例子,把它们插入window,转2,否则结束。

Discussion

  1.互信息的计算依赖于特征值数目多的特征。
  2.使用互信息选择特征,存在假设:训练集正反例子的比例与实际问题领域里正、反比例相同。
  3.单变元算法,特征性的相关性强调不够。
  4.对噪声(特征值取错;类别给错)比较敏感。
  5.ID3的决策树会随训练集的增加而逐渐变化。

决策树研究历程

同时,Breiman和Friedman开发的CART(分类与回归树)方法类似于ID3。
1986's Schlimmer 和Fisher 设计了ID4 递增式学习算法
1988's: Paul E. Utgoff 在前者基础上提出ID5。
1991's:钟鸣和陈文伟克服胡信息依赖正反例比例的缺点,提出基于信道容量的IBLE算法。
1993's:Quinlan的改进决策树归纳包C4.5(扩展属性上采用信息增益率),目前被普遍采用。

决策树研究现状

扩充决策树属性的取值范围及改进选择分离属性的选择;
处理大规模数据集的决策树;
扩充决策树,形成决策图;
提高决策树的构造效率,削减数据库遍历次数,减少I/O操作;
优化决策树,简化决策树输出;
将遗传算法、神经网络技术以及粗糙集理论引入决策树算法。

决策树的应用
规则提取
    将决策树进行广度优先搜索,对每一个叶子结点,求出从根结点到叶结点的路径。该路径上所有的结点的划分条件并在一起,并在每个结点生成IF...THEN规则,即构成一条分类规则。决策树的树结构可以生成对应的规则集,n个结点对应着n条规则。
分类
    对离散数据的分类称为分类,对数据值的分类称为预测。分类要解决的问题是为一个事件或对象归类,即预测一个特定的对象属于哪一类。分类模型是通过那些已知历史数据训练出来的。这里用于建立模型的数据称为训练集,通常是已经掌握的历史数据。分类就是通过分析训练集中的数据,对每个类别做出准确的描述或建立分析模型或挖掘出分类规则,然后用这个分类规则对其他数据对象进行分类。
    另外要注意的是,分类的效果一般与数据的特点有关。有的数据噪声大,有的有缺值,有的分布稀疏,有的字段或属性间的相关性强,有的属性是离散的,而有的是连续值或混合式的。目前普遍人不存在某种方法能适合于各种特点的数据。

研究前景

    由于训练数据中有些属性的描述语言不当、噪音数据的存在以及构建的决策树中存在着结构完全相同的重复子树等原因,导致决策树规模过大,使得用户难以理解。因此,必须寻找一些技术对决策树进行优化,在不影响分类正确率或有更好的分类正确率的前提下,使优化后的决策树有尽可能小的规模(叶子节点数少),并能推导出尽可能短的分类规则。

    利用数学和逻辑算子(包含启发式信息)修改测试属性空间;

    这类方法是在一些原始属性上,通过数学或者逻辑算子构造出新的属性(更复杂),从而使内节点变成多变量的。并在训练集上对这种构造方法的有效性进行测试。这种方法对于解决属性间的交互作用和子树重复的问题有良好的效果。

    改进测试属性选择方法;

    按照信息比值、分类信息估值、划分距离估值。

    对数据进行限制;

    这类简化方法是删除决策树中多余的实例子集或属性子集。ID3的窗口技术就是一种实例选择的方法,但是窗口技术不能产生明显优化的决策树。

    改变数据结构;

    通过将决策树转换成一个有向无环图,决策图相对决策树有2个优点:所有属于相同类的叶子结点可以合并;再者,决策图可以解决重复子树的问题。另一类简化决策树的方法是将决策树转化为相应的规则,之后对规则进行修剪。规则的修剪是树的剪枝算法提供更高的正确率,因为规则的剪枝相当与在树的剪枝中只剪一个叶子结点。

训练数据中缺失属性值处理,避免过学习问题,训练数据噪声(分类噪声,属性噪声)处理,训练集合的选取(利用粗糙集理论)。

  

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值