模型记录

实战模型记录

1.GBDT(Gradient Boosting Decision Tree)

  • GBDT中的树是回归树(不是分类树),GBDT用来做回归预测,调整后也可以用来分类。
  • 回归树:回归树总体流程类似于分类树,区别在于,回归树的每一个节点都会得到一个预测值,以年龄为例,该预测值等于属于这个节点的所有人年龄的平均值。分枝时穷举每个feature的每个阈值找最好的分割点,但衡量标准不再是最大熵,而是最小平方误差分枝终止条件为属性值唯一或者预设的终止条件(叶子个数上限)
  • 提升树算法:提升树是迭代多棵回归树来共同决策。当采用平方误差损失函数时每一个棵回归树学习的是之前所有树的结论和残差,拟合得到一个当前的残差回归树。
  • 梯度提升决策树:当损失函数是平方损失和指数损失函数时,每一步的优化很简单,如平方损失函数学习残差回归树。但对于一般的损失函数,往往每一步优化没那么容易(如绝对值损失函数和Huber损失函数),所以有梯度下降方法。

2.XGBoost(eXtreme Gradient Boosting)

和gbdt对比:

  • 1.GBDT以CART作为基分类器,xgboost还支持线性分类器
  • 2.GBDT在优化函数中只用到一阶导数信息,xgboost则对代价函数进行了二阶泰勒展开,同时用到了一阶和二阶导数。
  • 3.xgboost在代价函数中加入了正则项,控制了模型的复杂度。正则项包含两部分:叶子节点数和叶子结点输出分数。
  • 4.划分点的查找:贪心算法和近似算法
  • 5.支持并行,在特征粒度上并行,预先对数据进行排序,保存为block结构,在节点分裂时计算每个特征的信息增益,各个特征的信息增益就是多个线程进行

3.LightGBM

优化点

  • 1.Histogram算法:先把连续的浮点特征值离散化成k个整数,同事构造一个宽度为k的直方图。遍历数据时,根据离散化后的值作为索引在直方图中累计统计量,当遍历一次数据后,直方图累积了需要的统计量,然后根据直方图的离散值,遍历寻找最优的分割点。
  • 2.带深度限制的Leaf-wise的叶子生长策略:每次从当前所有叶子中,找到分裂增益最大的一个叶子,然后分裂,如此循环。因此同Level-wise相比,在分裂次数相同的情况下,Leaf-wise可以降低更多的误差,得到更好的精度。

4.RandomForest

bootstrap自助法生成m个训练集对每个训练集构造一颗决策树,在节点找特征进行分裂的时候,并不是对所有特征找到使得指标(如信息增益)最大的,而是在特征中随机抽取一部分特征,在抽取到的特征中找到最优解,进行分裂。模型预测阶段就是bagging策略,分类投票,回归取均值。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人工智能LeadAI

数据挖掘面试题之梯度提升树

GBDT是机器学习面试中的常客,但是,要准确地说出它的原理却并不容易,除了掌握DT基本知识外,还要掌握加法模型、前向分步算法、梯度提升思想,本文是对这些知识点的...

37530
来自专栏人工智能

机器学习笔记

基本术语 数据集(data set): 一组数据的集合 样本/示例(instance/sample):数据集中的一个事件或对象 属性/特征(attribute/...

20890
来自专栏专知

【干货】理解深度学习中的矩阵运算

【导读】本文是作者Nikhil B撰写的“Terence Parr和Jeremy Howard的深度学习的矩阵运算”笔记。我们知道,深度学习是基于线性代数和微积...

54340
来自专栏超然的博客

Hierarchical Attention Based Semi-supervised Network Representation Learning

1. 提出SHANE 模型,集成节点结构,文本和标签信息,并以半监督的方式学习网络嵌入

10020
来自专栏CDA数据分析师

三分钟看懂机器学习中应该注意哪些问题?

本文简单谈谈机器学习中应该注意的一些问题。仅供大家参考学习和讨论。 1. 特征预处理 机器学习中的输入数据必须是数值类型的,但是现实问题中不免会有一些类别类型的...

195100
来自专栏null的专栏

UFLDL笔记——自我学习

注:最近打算将UFLDL教程重新看一遍,其实里面有很多关于神经网络以及深度学习的知识点很有用,但是只是学习深度学习的话有一些内容就有点多余,所以想整理一个笔记,...

36850
来自专栏null的专栏

简单易学的机器学习算法——梯度提升决策树GBDT

梯度提升决策树(Gradient Boosting Decision Tree,GBDT)算法是近年来被提及比较多的一个算法,这主要得益于其算法的性能,以及该算...

879120
来自专栏ATYUN订阅号

从自编码器到变分自编码器(其一)

AiTechYun 编辑:yuxiangyu 自编码器是一种无监督学习技术,利用神经网络进行表征学习。也就是说,我们设计一个在网络中施加“瓶颈”,迫使原始输入压...

48850
来自专栏决胜机器学习

机器学习(十六) ——SVM理论基础

机器学习(十六)——SVM理论基础 (原创内容,转载请注明来源,谢谢) 一、概述 支持向量机(supportvector machine,SVM),是一种分类...

38670
来自专栏机器学习原理

机器学习(6)——决策树前言:

前言: 通过第前面的学习介绍了机器学习回归模型创建的流程,并且知道了机器学习要做的事情是找到目标函数,优化它,通过每次迭代都使目标函数值最小,最优解就是目标函数...

518100

扫码关注云+社区

领取腾讯云代金券