`
endual
  • 浏览: 3558614 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

数据挖掘 回归树

 
阅读更多
对于分类与回归树CART的学习(一)-------原理
2011-05-13 10:40:27
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://underthehood.blog.51cto.com/2531780/564685

说明一些变量的含义

独立变量,或者成为目标变量。可以是离散的(对于分类的情况,代表类标号),也可以是连续的(对于回归的情况,代表函数值)。

如果Y是离散的,且有J个类,它的取值范围为C={1,...,J}

Xm, m = 1, ... M

所有预测变量的集合。每个预测变量可以是离散的,也可以是连续的

Image(2)

整个训练集,供决策树生长使用

Image(3)

落在节点t上的训练样本

wn

关联到样本n的权重

fn

样本n的频数

π(j),j=1,...,J           

Y=j, j=1,...,J的先验概率p(Y=j)

p(j,t),j=1,...,J

在节点t中j类中的一个样本的概率

p(t)

一个样本在节点t中的概率

P(j|t),j=1,...,J

落到节点t的j类的一个样本的概率

C(i|j)

把类j的例子错分为类i的例子的代价.显然C(j|j)=0

树生长的过程

算法只考虑单变量的分裂。

1.找到预测变量的最佳分裂点

对于连续和有序的预测变量,从小到大排列它的值。对于排列好的预测变量,从头遍历每个值来检查每个候选分裂点。最好的分裂点最大化分裂准则。

对于名词性的预测变量(如颜色:红、绿、蓝),检查每个可能的子集来获得最好的分裂。

2.找到节点的最佳分裂

在步骤1中发现的最好分裂中,选择一个可以最大化分裂准则的。

3.迭代:使用步骤2找到的最佳分类分裂节点直到停止规则满足

停止规则:

· depth of the tree branch being constructed has reached the specified maximum value.

· 树分支的深度达到了指定的最大值

· number of training samples in the node is less than the specified threshold, when it is not statistically representative to split the node further.

· 落到某个节点的训练样本的数目比指定的阈值还要少,当它已经不具有统计的典型性来进一步分裂节点

· all the samples in the node belong to the same class (or, in the case of regression, the variation is too small).

· 落到该节点的所有样本都同属于相同的类(或者在回归的情况中,变化非常小)

· the best split found does not give any noticeable improvement compared to a random choice.

· 发现的最佳分裂与随机选择的分裂相比没有显著的提升

分类准则和不纯度的估计

在节点t,最好的分类s被选择来最大化一个准则Image(4) 。当一个节点的不纯度测量被定义,分裂准则用于减小不纯度。

分类不纯度

如果Y是离散的情况,有三个不纯度估计的准则:Gini不纯度、Towing不纯度、和有序Twoing不纯度.

在节点t

Image(5)

Image(6)

Image(7)

这里

Image(8)

Image(9)

I(a=b)为指示函数如果a=b则值为1,否则为0

Gini准则

一个节点t的不纯度为

Image(10)

Gini分裂准则对于不纯度的降低被定义为:

Image(11)

这里pL和pR是发送一个样本到左孩子节点tL和右孩子节点tR的概率。它们被估计为pL=p(tL)/p(t)和pR=p(tR)/p(t)。

注意:当用户指定了错分类代价,更改过的先验概率可以用来替换之前的先验概率。如果更改过的先验概率被使用了,那么问题可以看作成没有代价被使用。更改过的先验概率被定义为:

Image(12)

这里

Image(13)

Twoing准则

Image(14)

有序Twoing准则

有序Twoing准则被使用仅当Y是有序离散的。它的算法如下:

1.首先将类C={1,...,J}分成两个超类C1和C2=C-C1,满足C1={1, ..., j1},j1=1, ..., J-1

2.使用类间测量i(t)=p(C1|t)p(C2|t),发现分裂s*(C1)最大化Image(15)

Image(16)

3.找到超类C*1和C1最大化Image(17)

回归不纯度

如果Y是连续的,分裂准则Image(18) 和最小二乘偏差一起使用

Image(19)

这里

Image(20)

Image(21)

代理分裂(Surrogate Split)

给定一个分裂X*<=s*,它的代理分裂是一个分裂使用另外一个预测属性X,X<=sX(or X>sX),满足与主分裂最相似并且有着正的关联预测度量(predictive measure of asscoiation)。可以有多个代理分裂。关联预测度量(Predictive measure of association)越大,代理分裂越好。

predictive measure of asscoiation关联预测度量

Image(22) 为同时没有缺失X*和X的值的学习样本(resp. 节点t的学习样本)的集合。令Image(23) 为发送一个在Image(24) 中的样本到相同的子节点(同时通过s*和sX判定)的概率,并且Image(25) 是最大化概率Image(26) 的分裂

在节点t的s*和Image(27) 之间的关联预测度量是

Image(28)

这里pL(resp. pR)是在节点t的最好的分裂s*发送一个没有缺失X*值的样本到左子树的相对概率,pL=p(tL)/p(t)(resp. pR=p(tR)/P(t) 并且这里

Image(29)

Image(30)

Image(31)

并且如果分裂s*和sX发送样本n到相同的子集Image(32) 指示函数的值为1,否则0

处理缺失值

如果样本的目标变量缺失了,这个样本会被忽略。所有的预测属性缺失了,这个样本也会被忽略。如果样本权重和频数缺失了、为0或者为负,样本也被忽略。

代理节点的方法用来处理预测属性的缺失值。假设X*<s*是在一个节点的最好分裂。如果X*的值对于一个样本缺失了,最好的代理节点用来决定样本应该走到哪个子节点。如果这里没有代理节点或者所有代理节点关联的预测属性丢失了,该样本被忽略。

本文出自 “UnderTheHood ” 博客,请务必保留此出处http://underthehood.blog.51cto.com/2531780/564685

分享到:
评论

相关推荐

    数据挖掘回归树算法预测河流海藻富氧化的分析与比较.pdf

    数据挖掘回归树算法预测河流海藻富氧化的分析与比较.pdf

    基于梯度提升回归树的处理器性能数据挖掘研究.pdf

    处理器性能数据挖掘是一项复杂但十分关键的技术,它涉及到从处理器产生的大量性能事件中提炼有用信息,进而帮助理解、优化和预测处理器性能。在此过程中,数据挖掘技术尤其重要,它通过各种算法和模型对数据进行分析...

    数据挖掘线性回归数据集

    在数据挖掘的众多方法中,线性回归是一个基础且重要的模型,尤其适用于预测连续变量。线性回归分析旨在找出因变量(目标变量)与一个或多个自变量(解释变量)之间的线性关系,通过构建最佳拟合直线来预测未知值。 ...

    数据挖掘 数据集

    数据挖掘是一种从海量数据中发现有价值信息和知识的过程,它涉及统计、机器学习、数据库技术等多个领域。在数据挖掘过程中,数据集起着至关重要的作用。数据集是用于训练和测试算法的基础,它包含了用于分析的原始...

    数据挖掘-决策树-分类和回归树.pptx

    数据挖掘-决策树-分类和回归树.pptx

    数据挖掘在各行业的应用论文

    数据挖掘中概念树的标准、生成和实现.kdh XML与面向Web的数据挖掘技术.caj 数据挖掘和数据仓库及其在电信业中的应用.caj 数据挖掘技术及其在地学中的应用.caj 结合数据融合和数据挖掘的医疗监护报警.caj 基于多媒体...

    常用数据挖掘数据集

    标签“数据挖掘”进一步确认了内容的核心,数据挖掘涉及到的方法和技术包括预处理、特征工程、分类、聚类、关联规则挖掘、回归分析等。在这些数据集中,我们可以找到用于这些任务的实例数据,有助于理解和应用这些...

    数据挖掘原理与算法

    分类与回归树(CART)是另一种决策树算法,它在构建树的时候使用基尼指数或均方误差等标准,来选择最佳的分割属性,构建出二叉树结构。 数据挖掘是一个不断发展的领域,它与许多其他的技术和领域紧密相关,并且随着...

    高级数据挖掘课程-大数据挖掘之互联网金融风控模型 共27页.pptx

    常见的数据挖掘算法包括决策树、随机森林、支持向量机、神经网络等。 4. 风控模型的概念和应用:风控模型是一种用于评估和管理风险的数学模型。在互联网金融领域,风控模型可以应用于信用评分、风险评估、欺诈检测...

    完整版 北京大学 数据挖掘与数据分析教程 数据挖掘概念与技术 共88页.ppt

    数据挖掘是一种从海量数据中提炼出有价值信息和知识的过程,它是信息技术、数据库技术、机器学习、统计学和可视化等多个领域的交叉学科。北京大学的这门数据挖掘与数据分析教程深入讲解了这个领域的核心概念和技术。...

    分类和回归树详解,数据挖掘

    ### 分类和回归树详解——数据挖掘 #### 一、引言 在数据挖掘领域,分类和回归树(CART)是一种强大的工具,用于预测和分类问题。本篇将详细介绍分类和回归树的基本概念、构建过程及其在实际案例中的应用。 #### 二...

    数据挖掘可行性研究报告

    数据挖掘方法:介绍了监督学习、无监督学习、半监督学习和强化学习等方法,以及关联规则、聚类、分类和回归等经典模型。 挖掘的步骤和过程:详细阐述了从数据获取、数据清洗、特征选择到模型训练和验证的整个流程。 ...

    Java经典算法之数据挖掘

    统计学习是数据挖掘的基础,包括回归、主成分分析(PCA)、线性判别分析(LDA)等。它们通过统计方法从数据中提取规律,用于预测和特征降维。 Java库如Weka、Apache Mahout和MLlib(Spark的一部分)为开发者提供了...

    数据挖掘_数据挖掘实例_

    4. 模型构建:根据问题类型(分类、回归、聚类等),选择合适的算法,如决策树、随机森林、支持向量机、神经网络、K-means等,并进行训练。 5. 模型评估:使用交叉验证、准确率、召回率、F1分数、AUC等指标评估模型...

    数据挖掘项目源码

    数据挖掘中的建模通常涉及多种算法,如分类(如决策树、随机森林、支持向量机)、回归、聚类(如K-Means、DBSCAN)、关联规则(如Apriori)等。源码中可能会包含这些模型的实现,通过训练数据调整参数,以找到最佳...

    广工数据挖掘复习资料(含试卷)

    常见的数据挖掘任务包括分类、聚类、回归、关联规则挖掘和序列模式挖掘等。 二、数据预处理 在进行数据挖掘之前,往往需要对原始数据进行预处理,包括数据清洗(去除噪声和不一致数据)、数据集成(合并来自不同源...

    数据挖掘:概念与技术(韩家炜)

    数据挖掘任务主要分为三类:描述性挖掘(如聚类、关联规则)、预测性挖掘(如回归、时间序列分析、分类)和规约性挖掘(如总结、异常检测)。这些任务各有侧重,分别用于揭示数据的群体特征、预测未来趋势和找出异常...

    数据挖掘课程的知识体系构建.pdf

    其次,数据挖掘方法是数据挖掘课程的重要组成部分,包含分类、聚类、回归、关联规则、时间序列分析等多种数据挖掘技术。分类是将数据集中的数据项分配到多个类别中的方法;聚类则是将数据集分成多个具有相似性的数据...

Global site tag (gtag.js) - Google Analytics