商业智能领域 --知识、技术、平台、发展、业界...  
  博客登陆
         欢迎加入
           BI Club-1 QQ群:2635140已满
           BI Club-2 QQ群:42350958
         -->ttnn BI View Entrance
 
                       一点声明
     鉴于这段时间有朋友投诉本blog上文章引用问题。现特此声明有部分文章为转帖,可能有原创和转帖漏掉备注的情况。这里若有您的原创文章并且是在未经您同意就引用并且您介意的情况,我在此表达诚挚歉意,请及时与我联系进行调整!
  我的分类(专题)
  最新日志
  最新评论
  留  言  板
  友情链接



  日志信息

决策树挖掘模型  [Nirvana 发表于 2006-9-13 16:30:32]
1 分类树挖掘模型

预测一个分类的目的是为了创建一个基于已知数据的模型,可以使用该模型来分析为什么进行某些分类,或计算新的数据分类。历史数据经常由一个值的集合和这些值的一个分类组成,分类已经分类的数据会发现导致前一分类的特性,然后,结果分类模型可以用于预测包含新属性值的记录的类。树分类模型对数据的基本分布提供了简明的描述,基于大型数据库中属性个数和训练例子数,该算法能很好地进行换算。
实现分类任务的方法有许多,如神经网络方法、统计学方法、机器学习方法等等,其中机器学习方法中的决策树方法是最适合用于数据采掘的。因为:一、同其它方法相比,决策树方法构造树的速度快;二、决策树模式简单,容易理解;三、树能很容易地转换为SQL语句,从而可同数据库进行有效的连接;四、决策树分类器同其它分类器相比,能获得相似甚至更好的精度。因此,在数据采掘方法中,决策树方法受到了广泛的关注。由于决策树方法最初是用来解决专家系统获取知识的“瓶颈现象”,当时的数据大多是人为准备的,数据较理想,数据库也相对较小,而现在进行数据采掘所面对的数据库要大得多,并且可能有很多噪声,因此处理的方法要作相应的改变。
决策树是一种倒立的树结构,它由内部节点、叶子节点和边组成。其中最上面的一个节点叫根节点。 构造一棵决策树需要一个训练集,一些例子组成,每个例子用一些属性(或特征)和一个类别标记来描述。构造决策树的目的是找出属性和类别间的关系,一旦这种关系找出,就能用它来预测将来未知类别的记录的类别。这种具有预测功能的系统叫决策树分类器。
构造出的决策树有二叉树和多叉树,二叉树的内部节点一般表示为一个逻辑判断,如形式为(ai = vi )的逻辑判断,其中ai 是属性,vi是该属性的某个属性值;树的边是逻辑判断的分支结果。多叉树(如ID3)的内部节点是属性,边是该属性的所有取值,有几个属性值,就有几条边。树的叶子节点都是类别标记。
构造一个决策树分类器通常分为两步:树的生成和剪枝。其中树的生成是采用自上而下的递归方法。以多叉树为例,它的构造思路是,如果训练例子集合中的所有例子是同类的,则将之作为叶子节点,节点内容即是该类别标记。否则,根据某种策略选择一个属性,按照属性的各个取值,把例子集合划分为若干子集合,使得每个子集上的所有例子在该属性上具有同样的属性值。然后再依次递归处理各个子集。这种思路实际上就是“分而治之”(divide-and-conquer)的道理。二叉树同理,差别仅在于要选择一个好的逻辑判断。由此可以看出,节点处所选的属性不同,会构成不同的决策树,而不同的树,预测精度一般是不同的。因此,树构成步骤中,主要就是找出节点的属性和如何对属性值的划分。
第一步构造的树完全符合训练集中的数据,若训练集中的数据有噪声(如某些记录的属性值有误,类别标记有误等等),则这种完全符合就成了过分拟合,它反而不具有很好的预测性,因此就进行第二步:剪枝。剪枝就是剪去那些不会增大树的错误预测率的分枝。经过剪枝,不仅能有效的克服噪声,还使树变得简单,容易理解。所以,剪枝在构造决策树分类器的过程中也是很重要的。


2 IM中的分类树模型运用

模型选项:
任务 参数 值
输入数据 输入数据 宽表
优化挖掘运行 时间/磁盘
过滤记录 设置过滤条件
方式参数 使用方式 训练/测试/应用
最大树深度 限制二元决策树级数
内部节点最大纯度 停止进一步划分已经达到指定纯度的节点
内部节点最小记录数 改节点分割出下一级节点前包含的记录数
分类结果
输入字段 输入字段 选择输入属性
类别标签 输入的类别属性
字段参数 字段权 根据重要性设置权值
输出字段 输出字段 要输出的描述字段
类别标识符 输出类别
置性度字段名
输出数据 数据数据 表/平面文件

几种运行方式:
训练方式:挖掘函数根据选择的输入数据来构建一个模型,以后该模型作为分类器使用。
测试方式:挖掘函数使用已经知道分类结果的新数据或者和训练相同的数据,来验证在训练方式下创建出来的模型是否能够产生另人满意的精度结果。
应用方式:挖掘函数使用在训练方式中创建的模型,对新输入的数据中的每条记录预测指定的类别,这个数据类别和生成模型中的数据类别相同

注意要点:
牺牲精度可以提高分类挖掘运行性能
限制最大树深度可以提高运行性能,通过观察当前树深度,可以估计挖掘运行剩余时间,但不能估算限制树深度时丢失的精度
减少每个内部节点的最大纯度值,缺省是100%,可以指定一个较低值,使得在到达指定值时,挖掘函数停止分割节点。
增加每个内部节点的最小记录值,缺省是5,例如增加到50,那么只有叶节点可以少于50条记录

阅读全文 | 回复(0) | 引用通告 | 编辑 

发表评论:

    大名:
    密码:
    主页:
    标题:

-->tnnBI杂志 

Powered by Oblog.