决策树过拟合
更新时间:2023-12-05 08:05:01 阅读量: 教育文库 文档下载
决策树学习的过拟合问题
姓名:
专业:通信与信号系统 学号:
一 决策树学习简介
决策树学习是一种逼近离散值目标函数的方法,这种方法将从一组训练数据中学习到的函数表示为一棵决策树。决策树叶子为类别名,其他的结点由实体的特征组成,每个特征的不同取值对应一个分枝。若要对一个实体分类,从树根开始进行测试,按特征的取值向下进入新结点,对新结点进行测试,过程一直进行到叶结点,实例被判为属于该叶子结点所标记的类别。它可以表示任意的离散函数和离散特征,可以将实例分成两个或多个类。
二 决策树学习的过拟合问题产生原因
决策树是判断给定样本与某种属性相关联的决策过程的一种表示方法。决策树的每个内部结点是对属性的一个测试,每个分支代表一个测试输出,每个叶结点表示某个类别或类别的分布。当一个待分类的样本沿根结点经内部结点的测试达到某个叶结点时,则判定该样本属于此叶结点所标识的类别。
建立决策树的过程,即树的生长过程是不断地把训练数据集进行划分的过程,每次划分对应一个属性,也对应着一个内部结点,划分所选的属性应使划分后的分组“差异”最大。决策树生成算法的不同主要体现在对“差异”的衡量方式上。
通常直接生成的完全决策树不能立即用于对未知样本进行分类。由于完全决策树对训练样本的特征描述得“过于精确”,无法实现对新样本的合理分析,所以此时它不是一棵分析新数据的最佳决策树。一棵完全决策树能非常准确地反映训练集中数据的特征,但因失去了一般代表性而无法用于对新数据的分类或预测,这种现象一般称为“过拟合”。
过度拟合定义为:给定一个假设H,如果在假设空间上存在另一个假设H',使得在训练集上H的错误率差比H'小,而在测试集上H的错误率却比H'要大,那么称假设H过度拟合训练数据。
通常导致决策树过拟合的原因有多种,但主要有以下两种: ⑴噪声数据导致过分拟合
在现实世界中,数据伴有随机的错误或噪声往往是难以完全避免的。例如在对用户是否离网的分类中,目标变量“是否流失”可能被错误的标记,利用此数据拟合得到的模型,就有可能因为拟合错误标记的训练记录,导致在模型应用阶
段产生错误分类,不能很好的进行推广。
⑵缺乏代表性样本导致过分拟合
在训练数据缺乏具有代表性的样本的情况下,往往需要继续细化模型才能得到较好拟合训练集的模型,这样得到的模型同样可能具有较高的泛化误差。
三 决策树过拟合问题的解决方法
由于实际问题中存在太多不确定因素,用决策树算法对训练集分类时,所得到的决策树规模太大,难免会过度拟合训练数据。而实际上大而复杂的决策树并不意味着可以得到更加准确的规则集。另外,寻找最小决策树被证明是NP问题,所以在现实中找不到绝对的最小决策树。为了避免过度拟合,我们只能通过分析造成过度拟合的原因,来寻找一些简化技术来修剪决策树。
避免决策树学习中过度拟合的途径可以被分为两大类:预剪枝方法和后剪枝方法。
㈠预剪枝(pre-pruning)法
预剪枝法通过提前停止分支的生长过程来实现, 具体在什么时候停止决策树的生长有多种不同的方法:
a.一种最为简答的方法就是在决策树到达一定高度的情况下酒停止树的生长;
b.到达此结点的实例具有相同的特征向量,而不必一定属于同一类,也可以停止生长。这种情况可以处理数据中的数据冲突问题;
c.到达此结点的实例个数小于某一个阈值也可以停止树的生长;
d.计算每次扩张对系统性能的增益,如果这个增益值小于某个阈值则不进行扩展。如果在最好的情况下的扩展增益都小于阈值,即使有些叶子结点的实例不属于同一类,也停止树的增长。
该方法的优点在于避免产生过分拟合训练数据的过于复杂的子树,但是,我们很难为提前终止选取正确的阀值,阀值太高将导致拟合不足的模型,而阀值太低则不能充分地解决过分拟合问题。此外,即便是使用已有的属性测试条件得不到显著的增益,接下来的划分也可能产生较好的子树。
预剪枝有一个缺点,即视野效果问题。也就是说在相同的标准下,也许当前的扩展会造成过度拟合训练数据,但是更进一步的扩展能够满足要求,也有可能
准确地拟合训练数据。这将使得算法过早地停止决策树的构造。
㈡后剪枝(post-pruning)法
后剪枝法从一个“充分生长”树中,按照自底向上的方式修剪掉多余的分支,修剪有两种方法:
(1)用新的叶子结点替换子树,该叶子结点的类标号由子树记录中的多数类确定;
(2)用子树中最常用的分支代替子树。J48决策树算法采用了子树提升与子树替换的修剪策略。
计算修剪前后的预期分类错误率,如果修剪导致预期分类错误率变大,则放弃修剪,保留相应结点的各个分支,否则就将相应结点分支修剪删去。在产生一系列经过修剪的决策树候选之后,利用一个独立的测试数据集,对这些经过修剪的决策树的分类准确性进行评价, 保留下预期分类错误率最小的 (修剪后) 决策树。
与预剪枝相比,后剪枝倾向于产生更好的结果,因为与预剪枝不同,后剪枝是根据完全生长的树做出的剪枝决策,预剪枝则可能过早终止决策树的生长。
下面介绍三种主要的后剪枝方法:悲观错误剪枝(Mistic Error Pruning,PEP),最小错误剪枝(Minimum Error Pruning,MEP),代价复杂度剪枝(Cost Complexity Pruning,CCP)。
⑴悲观错误剪枝(PEP)
悲观错误剪枝法是根据剪枝前后的错误率来判定子树的修剪。该方法引入了统计学上连续修正的概念弥补REP中的缺陷,在评价子树的训练错误公式中添加了一个常数,假定每个叶结点都自动对实例的某个部分进行错误的分类。
该方法需要对决策树上所有的非叶子结点A进行计算分析。搜索时从决策树的根结点开始,计算每个分枝结点被剪后或者是被子树替换后的期望错误率。为了使数据源的数据特性得到最大限度的保留,把数据源作为一个整体,而不是将其分为训练集和测试集两个部分。因此需要考虑最坏的情况,取置信区间的上限作悲观情况下的错误估计。给定一个置信度c,错误总数服从N项贝努利(Bernoulli)分布是很明显的,因而有概率等式如下:
p[f?qq(1?q)/N??1?c]?c
在该公式中,q表示估计的错误率,N表示被修剪的子树下的实例总数,假设E表示修剪后出现的错误实例数,那么f?E/N是实际观测到的错误率。令
z??1?c ,取置信区间的上限作为该结点的悲观错误率估计,则可得该结点的错
误率计算公式如下:
f?q?z22N?zfNN2z1?N?f2?z224N
在该公式中,根号前的“?”号表示取置信区间的上限,q就是估计的悲观错误率。给定一个期望错误率最高阈值C。当剪去结点A时,如果导致的错误率
q不高于给定的阀值C,则剪去结点A下的子树;否则,保留结点A下的子树。 ⑵最小错误剪枝(MEP)
MEP算法希望通过剪枝得到一棵相对于独立数据集来说具有最小期望错误
率的决策树。所使用的独立数据集是用来简化对未知样本的错分样本率的估计的,并不意味真正使用了独立的剪枝集,实际情况是无论早期版本还是改进版本均只利用了训练集的信息。
对于k类问题,定义样本到达结点t且属于第i类的期望概率为:
Pi(t)?ni(t)?paimn(t)?m ;其中为由训练集得来的属于第i类的先验概率,m表示
先验概率对期望概率pi(t)的影响程度,反映了剪枝的程度,为简单起见认为所有类别的m均相同。当一个新样本到达结点t而被分类时,结点t的期望错误率表示为
EER(t)?min[1?pi(t)]?min{[n(t)?ni(t)?(1?pai)m]/[n(t)?m]}
ii当m?k且pai?1/k时,可得
EER(t)?min{[n(t)?ni(t)?k?1]/[n(t)?k]}?[e(t)?k?1]/[n(t)?k]
i在MEP中,自底向上计算每个内部结点t的期望错误率,称为静态错误树T1的期望错误称为动态错误DYE(t),STE(t),STE(t)?[e(t)?k?1]/[n(t)?k] ;
DYE(t)是其孩子结点的期望错误的加权和。
MEP算法自底向上顺序遍历完全决策树Tn并计算子树T 的静态错误STE(t)和动态错误DYE(t),当子树Tt的静态错误和动态错误满足STE(t)?DYE(t)时则剪枝,并用一个叶结点来代替,该叶结点所标识的类别由“大多数原则”来确定。
⑶代价复杂度剪枝(CCP)
CCP算法采用一种二分递归分割的技术,将当前的样本集分为两个子样本集,使得生成的的每个非叶子结点都有两个分支。因此,CCP算法生成的决策树是结构简洁的二叉树。
CCP算法是通过在完全生长的树上剪去分枝实现的,通过删除结点的分支来剪去树结点。最下面未被剪枝的结点成为树叶。CCP用的成本复杂性标准是分类树的简单误分(基于验证数据的)加上一个对树的大小的惩罚因素。惩罚因素是有参数的,我们用a表示,每个结点的惩罚。成本复杂性标准对于一个数来说是
Err(T)?aL(T),其中Err(T)是验证数据被树误分部分,L(T)是树T的叶结点数,a是每个结点的惩罚成本:一个从0向上变动的数字。当a?0对树有太多的结点
没有惩罚,用的成本复杂性标准是完全生长的没有剪枝的树。在剪枝形成的一系列树中,从其中选择一个在验证数据集上具有最小误分的树是很自然的,我们把这个树成为最小误分树。
⑷三种算法的比较
在以上三种算法中,对于给定剪枝集,PEP剪枝算法中当某个子树T1满足剪枝条件时将不再对其后裔进行剪枝判断,因此PEP方法收敛速度较快,但最坏情况下仍然每个结点都要遍历,为线性复杂度。在MEP剪枝算法中m的选择比较关键,因为剪枝程度通过m控制,m越大剪枝越严重。当m接近无穷时pi(t)?mi,而是对训练集中属于第i类样本所占比重的估计,只有当剪枝到只剩一个叶结点时期望错误率最少,此时剪枝程度最大,m较小时剪枝程度也较小。大多数情况下剪枝并不会使预测精度降低,只有个别邻域可能较难控制;而对于所生成的剪枝树的复杂程度来说,MEP,CCP容易产生“欠剪枝”。
引入剪枝技术目的是为了简化决策树,提高决策树的泛化能力,避免对训练
集的过适应。但在某些数据集中剪枝并不是必需的,比如生成的决策树本身的分类错误率较高通常不再进行剪枝。在实际应用中选择后剪枝算法要对分类精确度和树的复杂程度两个方面进行权衡,要把不同算法的特点与实际数据集相结合,以此来选择剪枝策略,这样才能在精确度和复杂度中找到平衡点,较好地解决具体应用问题。
正在阅读:
决策树过拟合12-05
大学生择业就业状况分析与对策思考08-19
体检报告常见病分析07-23
各城市商业街的特点特色06-29
会计继续教育测试题及正确答案山东省411-18
岗位员工技能矩阵图09-03
LTE SEQ分析案例非常实用05-21
人体主要营养素功效简表07-23
大明宫基本讲解词(新)06-08
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 拟合
- 决策
- 县农业局行政执法评议自查报告
- 幼儿园教育工作总结:让孩子的学习轻松起来
- 江苏省2007年普通高校单独招生统一考试数学试卷(答案)
- 一分中心高压初证电工试题(新版)附答案2013.9
- 激素剂量换算
- 2017-2018年最新语文S版 小学五年级语文上册全册教案第一学期全套教学设计(含教学计划 进度表 教学反思)
- 2019-2020年七年级数学下册《提公因式法》同步练习1 冀教版
- 美术概论
- 部分工厂供电小习题答案
- 银监会叫停小贷公司信托融资
- 经济法小论文
- 基于EPS2008环境下地形要素符号的绘制方法
- 机票黑屏出错信息提示总汇
- 复摆式鄂式破碎机(动颚板部分)
- 城市经济学考试复习 课件 - 图文
- 2014中考备考数学总复习基础讲练 第12讲 几何初步知识及相交线、平行线(含答案)
- 电子技术复习题
- 流行的及常用的6款发烧IC音频功率放大器
- SQL实例及说明
- 科学技术档案管理办法 - 图文