机器学习技法-决策树和CART分类回归树构建算法

课程地址:https://class.coursera.org/ntumltwo-002/lecture

重要!重要!重要~

一、决策树(Decision Tree)、口袋(Bagging),自适应增强(AdaBoost)

  • Bagging和AdaBoost算法再分类的时候,是让所有的弱分类器同时发挥作用。它们之间的区别每个弱分离器是否对后来的blending生成G有相同的权重。
  • Decision Tree是一种有条件的融合算法,每次只能根据条件让某个分类器发挥作用。

二、基本决策树算法

1.用递归的视角来看决策树,根据特征选择分支条件,不断的生成子树,所有的子数组成了最后的决策树。

例如下面根据回家时间、约会情况、作业的deadline的特征,生成决策树,预测是否会观看mooc在线课程。

 

2.基本的决策树算法描述

  • 确定分支条件。分支条件可以由人来确定,也可以由算法生成
  • 根据分支条件划分训练数据D
  • 根据分支条件不断递归生成子树,直到满足终止条件
  • 为了防止过拟合,限制模型的复杂度,通常都会通过剪枝(Pruning)来正则化决策树

三、CART算法(分类回归树)

林这里讲的很容易理解,可以参考:http://blog.csdn.net/u011067360/article/details/24871801?utm_source=tuicool&utm_medium=referral

  • CART是只有两个分支的二叉树
  • 根据“纯度”确定分支的条件。对于分类的通常选择GINI,对于连续的目标变量可以使用LSD或者LAD。

GINI指数:介于0~1之间的数,0-完全相等,1-完全不等。总体内包含的类别越杂乱,GINI指数就越大(和熵的概念类似)。

  1. 根据GINI找到最佳的待切分特征
  2. 如果该节点不能再分,将该节点存为叶节点
  3. 执行二元切分
  4. 在右子树递归调用createTree()方法,创建子树
  5. 在右子树递归调用createTree()方法,创建子树

四、CART和AdaBoost元算法应用比较

CART相比AdaBoost的效率会高一些,因为前者是“有条件的切”,后者是完全的“横、竖”。

五、CART实践中的特点

 

时间: 2024-10-03 12:07:54

机器学习技法-决策树和CART分类回归树构建算法的相关文章

CART(分类回归树)

1.简单介绍 线性回归方法可以有效的拟合所有样本点(局部加权线性回归除外).当数据拥有众多特征并且特征之间关系十分复杂时,构建全局模型的想法一个是困难一个是笨拙.此外,实际中很多问题为非线性的,例如常见到的分段函数,不可能用全局线性模型来进行拟合. 树回归将数据集切分成多份易建模的数据,然后利用线性回归进行建模和拟合.这里介绍较为经典的树回归CART(classification and regression trees,分类回归树)算法. 2.分类回归树基本流程 构建树: 1.找到[最佳待切分

CART分类回归树算法

CART分类回归树算法 与上次文章中提到的ID3算法和C4.5算法类似,CART算法也是一种决策树分类算法.CART分类回归树算法的本质也是对数据进行分类的,最终数据的表现形式也是以树形的模式展现的,与ID3,C4.5算法不同的是,他的分类标准所采用的算法不同了.下面列出了其中的一些不同之处: 1.CART最后形成的树是一个二叉树,每个节点会分成2个节点,左孩子节点和右孩子节点,而在ID3和C4.5中是按照分类属性的值类型进行划分,于是这就要求CART算法在所选定的属性中又要划分出最佳的属性划分

分类回归树

CART(Classification and Regression tree)分类回归树由L.Breiman,J.Friedman,R.Olshen和C.Stone于1984年提出.CART是一棵二叉树,采用二元切分法,每次把数据切成两份,分别进入左子树.右子树.而且每个非叶子节点都有两个孩子,所以CART的叶子节点比非叶子多.相比ID3和C4.5,CART应用要多一些,既可以用于分类也可以用于回归. 一 特征选择 CART分类时,使用基尼指数(Gini)来选择最好的数据分割的特征,gini描

【机器学习笔记之三】CART 分类与回归树

本文结构: CART算法有两步 回归树的生成 分类树的生成 剪枝 CART - Classification and Regression Trees 分类与回归树,是二叉树,可以用于分类,也可以用于回归问题,最先由 Breiman 等提出. 分类树的输出是样本的类别, 回归树的输出是一个实数. CART算法有两步: 决策树生成和剪枝. 决策树生成:递归地构建二叉决策树的过程,基于训练数据集生成决策树,生成的决策树要尽量大: 自上而下从根开始建立节点,在每个节点处要选择一个最好的属性来分裂,使得

mahout探索之旅——CART分类回归算法

CART算法原理与理解 CART算法的全称是分类回归树算法,分类即划分离散变量:回归划分连续变量.他与C4.5很相似,但是一个二元分类,采用的是类似于熵的GINI指数作为分类决策,形成决策树之后还要进行剪枝,我自己在实现整个算法的时候采用的是代价复杂度算法. GINI指数 GINI指数主要是度量数据划分或训练数据集D的不纯度为主,系数值的属性作为测试属性,GINI值越小,表明样本的纯净度越高(即该样本属于同一类的概率越高).选择该属性产生最小的GINI指标的子集作为它的分裂子集.比如下面示例中一

对于分类回归树和lightgbm的理解

在分类回归树中之所以要先分类后回归的原因是, 对于一般的线性回归是基于全部的数据集.这种全局的数据建模对于一些复杂的数据来说,其建模的难度会很大.所以我们改进为局部加权线性回归,其只利用数据点周围的局部数据进行建模,这样就简化了建模的难度,提高了模型的准确性.树回归也是一种局部建模的方法,其通过构建决策点将数据切分,在切分后的局部数据集上做回归操作. 比如在前面博客中提到的风险预测问题,其实就是在特征层面对于不同类型的用户分到了不同的叶子节点上.例如我们用了时间作为特征,就将晚上开车多的用户分到

用cart(分类回归树)作为弱分类器实现adaboost

在之前的决策树到集成学习里我们说了决策树和集成学习的基本概念(用了adaboost昨晚集成学习的例子),其后我们分别学习了决策树分类原理和adaboost原理和实现, 上两篇我们学习了cart(决策分类树),决策分类树也是决策树的一种,也是很强大的分类器,但是cart的深度太深,我们可以指定cart的深度使得cart变成强一点的弱分类器. 在决策树到集成学习我们提到,单棵复杂的决策树可以达到100%,而简单的集成学习只能有85%的正确率,下面我们尝试用强一点的弱分类器来看下集成学习的效果有没有提

机器学习3-课后题:使用岭回归与lasso算法选择变量

题目 准备 1准备安装和加载包 2读入数据 多重共线性检查 1全部变量参与线性回归 2全部变量参与线性回归 岭回归 1全部变量做岭回归 1去掉X3再做岭回归 使用linearRidge自动做岭回归 lasso 1变量选择顺序 2选择哪些变量 1.题目 分别使用岭回归和Lasso解决薛毅书第279页(PDF为p331)例6.10的回归问题 2.准备 2.1.准备安装和加载包 使用到R语言的函数和对应包 函数 功能 包 lm.ridge 提供岭回归函数 ridge linearRidge 自动进行岭

机器学习经典算法详解及Python实现--CART分类决策树、回归树和模型树

摘要: Classification And Regression Tree(CART)是一种很重要的机器学习算法,既可以用于创建分类树(Classification Tree),也可以用于创建回归树(Regression Tree),本文介绍了CART用于离散标签分类决策和连续特征回归时的原理.决策树创建过程分析了信息混乱度度量Gini指数.连续和离散特征的特殊处理.连续和离散特征共存时函数的特殊处理和后剪枝:用于回归时则介绍了回归树和模型树的原理.适用场景和创建过程.个人认为,回归树和模型树