四、决策树、随机森林、GBDT、XGBoost

(本节课各种数学式子比较多。。。。。^_^)

决策树 Decision Tree
? 介绍
? 熵 Entropy
? 信息增益 Information Gain
? 常见算法
? 过度拟合 Overfitting
? 剪枝 Prune
? 增益率 GainRatio
? 更多的DT应?场景类别:
? 连续函数,多分类,回归
? 决策树的究极进化 Ensemble
? Bagging
? Random Forest
? Boosting
? GBDT
? XGBoost

决策树

  分治思想

  根据不同的条件作出相应的决定

  区分数据

信息增益

决策树算法:  

  ID3算法

  C4.5算法

  CART算法

Bagging (Breiman, 1996)
Fit many large trees to bootstrap-resampled versions of the training
data, and classify by majority vote.

Random Forest

  1、从原始训练数据集中,应?bootstrap?法有放回地随机抽取k个新的?助样本集,
并由此构建k棵分类回归树,每次未被抽到的样本组成了K个袋外数据(out-of-
bag,BBB)。
  2、设有n个特征,则在每?棵树的每个节点处随机抽取m个特征,通过计算
每个特征蕴含的信息量,特征中选择?个最具有分类能?的特征进?节点分裂。
  3、每棵树最?限度地?长, 不做任何剪裁
  4、将?成的多棵树组成随机森林, ?随机森林对新的数据进?分类,
分类结果按树分类器投票多少?定。

Boosting
  1. 先在原数据集中长出?个tree
  2. 把前?个tree没能完美分类的数据重新weight
  3. ?新的re-weighted tree再训练出?个tree
  4. 最终的分类结果由加权投票决定

  AdaBoost

    步骤1. ?先,初始化训练数据的权值分布。每?个训练样本最开始时都被
赋予相同的权值:1/N

      步骤2. 进?多轮迭代,?m = 1,2, ..., M表?迭代的第多少轮

    步骤3. 组合各个弱分类器

Gradient Boostcd Decision Tree (GBDT)

特点:

   a. Adaboost的Regression版本 

   b. 把残差作为下?轮的学习?标
     c. 最终的结果有加权和值得到,不再是简单的多数投票

XGBoost
  本质还是个GBDT,但是是把速度和效率做到了极致,所以叫X (Extreme) GBoosted

训练 模型

  房价预测案例

原文地址:https://www.cnblogs.com/qianyuesheng/p/8453606.html

时间: 2024-12-04 04:02:52

四、决策树、随机森林、GBDT、XGBoost的相关文章

集成学习 - 决策树-随机森林

认识 我觉得决策树+ 随机森林 应该是 ML 中最为重要的算法之一了吧, 反正我是很喜欢用的. 算法难度低, 可解释性很强, 能可视化 能处理非线性, 可扩展为随机森林(集成学习) 建立决策树的判别依据有很多, 比较主流的有经典的 ID3 算法(熵), C4.5 , 基尼系数等. 我是这种基于熵的理解了, 上学时学过熵的概念, 在<> 和 <> 有讲到. 其余的也没仔细看, 暂时能深入理解一个就可以了. 信息熵 衡量信息的不确定性 或 混乱程度的指标 不确定性越大, 则熵值越大 直

集成学习:随机森林.GBDT

集成学习(Ensemble Learning) 集成学习的思想是将若干个学习器(分类器&回归器)组合之后产生一个新学习器.弱分类器(weak learner)指那些分类准确率只稍微好于随机猜测的分类器(errorrate < 0.5): 集成算法的成功在于保证弱分类器的多样性(Diversity).而且集成不稳定的算法也能够得到一个比较明显的性能提升 常见的集成学习思想有: Bagging Boosting Stacking Why need Ensemble Learning? 1. 弱分

决策树 随机森林 adaboost

? 熵.互信息? 决策树学习算法 ? 信息增益 ? ID3.C4.5.CART? Bagging与随机森林? 提升 ? Adaboost/GDBT ? 熵.互信息 熵是对平均不确定性的度量. 平均互信息:得知特征Y的信息而使得对标签X的信息的不确定性减少的程度.描述随机变量之间的相似程度.(条件熵.相对熵:差异性) ? 决策树 决策树学习采用的是自顶向下的递归方法,有监督学习. 其基本思想是以信息熵为度量构造一棵熵值下降最快的树,到叶子节点处的熵值为零,此时每个叶节点中的实例都属于同一类. 建立

机器学习之路:python 综合分类器 随机森林分类 梯度提升决策树分类 泰坦尼克号幸存者

python3 学习使用随机森林分类器 梯度提升决策树分类 的api,并将他们和单一决策树预测结果做出对比 附上我的git,欢迎大家来参考我其他分类器的代码: https://github.com/linyi0604/MachineLearning 1 import pandas as pd 2 from sklearn.cross_validation import train_test_split 3 from sklearn.feature_extraction import DictVe

人工智能_5_决策树_随机森林

# 决策树,随机森林 # 决策树结构:if-then # 信息熵: # 例:第一届世界杯32支球队 每个队伍冠军概率1/32 # 可得 log32(程序员认为的log一般都默认是以2为底) = -(1/32*log(1/32)+1/32*log(1/32).....) # 2018 第21届世界杯根据历史数据获胜概率不同 log32 > -(1/4*log(1/4)+1/4*log(1/4).....) # 几个log的和即为信息熵, 当概率变化时 log的和是小于log(n)的 # 信息熵与不

04-10 Bagging和随机森林

目录 Bagging算法和随机森林 一.Bagging算法和随机森林学习目标 二.Bagging算法原理回顾 三.Bagging算法流程 3.1 输入 3.2 输出 3.3 流程 四.随机森林详解 4.1 随机森林和Bagging算法区别 五.随机森林拓展 5.1 Extra Trees 5.2 Totally Random Trees Embedding 5.3 Isolation Forest 六.随机森林流程 6.1 输入 6.2 输出 6.3 流程 七.随机森林优缺点 7.1 优点 7.

随机森林算法基础梳理

1.集成学习概念 在机器学习的有监督学习算法中,我们的目标是学习出一个稳定的且在各个方面表现都较好的模型,但实际情况往往不这么理想,有时我们只能得到多个有偏好的模型(弱监督模型,在某些方面表现的比较好).集成学习就是组合这里的多个弱监督模型以期得到一个更好更全面的强监督模型,集成学习潜在的思想是即便某一个弱分类器得到了错误的预测,其他的弱分类器也可以将错误纠正回来. 集成方法是将几种机器学习技术组合成一个预测模型的元算法,以达到减小方差(bagging).偏差(boosting)或改进预测(st

机器学习中的算法(1)-决策树模型组合之随机森林与GBDT

版权声明: 本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系[email protected] 前言: 决策树这种算法有着很多良好的特性,比如说训练时间复杂度较低,预测的过程比较快速,模型容易展示(容易将得到的决策树做成图片展示出来)等.但是同时,单决策树又有一些不好的地方,比如说容易over-fitting,虽然有一些方法,如剪枝可以减少这种情况,但是还是不够的. 模型组合(比如

机器学习中的算法——决策树模型组合之随机森林与GBDT

前言: 决策树这种算法有着很多良好的特性,比如说训练时间复杂度较低,预测的过程比较快速,模型容易展示(容易将得到的决策树做成图片展示出来)等.但是同时,单决策树又有一些不好的地方,比如说容易over-fitting,虽然有一些方法,如剪枝可以减少这种情况,但是还是不够的. 美国金融银行业的大数据算法:随机森林模型+综合模型 模型组合(比如说有Boosting,Bagging等)与决策树相关的算法比较多,这些算法最终的结果是生成N(可能会有几百棵以上)棵树,这样可以大大的减少单决策树带来的毛病,有