xgboost处理二分类问题原理
博主最近为了准备校招猛看有关gbdt的算法细节,有一个百思不得其解的疑惑,就是xgboost在处理二分类问题时,返回的预测值是0~1之间的概率值,莫非和logistic function有关?
最终,我查阅了xgboost官网的介绍,得到了一些答案。在这里,具体原理我就不讲了,网上一大堆资料写烂了(具体原理请看这篇文章),我说几个容易忽视的地方。
1.叶子是以什么指标决定是否分裂的?
一开始,在网上看资料说xgboost用到的都是CART回归树,自然而言就以为,解决分类问题用到时gini系数,回归问题用的是均方差,实际根本不是这回事!
首先,我们的obj经过一系列化简得到
这里
这个obj代表了每棵树的要优化的最终目标,应该越小越好。我们前面得到了t-1个函数模型(树),我们要构建第t个模型(树)时,只要求前t-1函数的一阶和二阶导数和前t-1的函数模型的乘积即可。这里的可以控制叶子节点的个数,继而控制模型复杂度,提高范化能力。
那么,如何分裂呢???
大概就是这个公式了:
算分数,分数正的就分裂吧。。。或是可以设置阈值?whatever。
2.二分类问题最后咋得到的概率?
比如,得到树模型后,输入一个原始数据,经过n个数打分,残差相加,得到的数值要经过logictic function映射,然后就得到概率值了。
3.多分类问题咋处理的?
当然是用softmax函数喽,具体细节,看源码吧。。
xgboost处理二分类问题原理相关推荐
- libsvm回归参数寻优cgp_【lightgbm/xgboost/nn代码整理二】xgboost做二分类,多分类以及回归任务...
1.简介 该部分是代码整理的第二部分,为了方便一些初学者调试代码,作者已将该部分代码打包成一个工程文件,包含简单的数据处理.xgboost配置.五折交叉训练和模型特征重要性打印四个部分.数据处理部分参 ...
- 感知机(Perceptro)二分类算法原理学习小结记录
感知机是非常古老的一个二分类算法,原理非常简单,直观地来说,对于平面上的两类数据点,找到一条直线来将其划分开来,对于空间中的点,用一个平面来将两部分完全划分开,这样的数据都是线性可分的,也就是在平面或 ...
- python实现二分类_感知器做二分类的原理及python numpy实现
本文目录: 1. 感知器 2. 感知器的训练法则 3. 梯度下降和delta法则 4. python实现 1. 感知器[1] 人工神经网络以感知器(perceptron)为基础.感知器以一个实数值向量 ...
- 神经网络系列之五 -- 线性二分类的方法与原理
https://www.cnblogs.com/woodyh5/p/12101581.html 系列博客,原文在笔者所维护的github上:https://aka.ms/beginnerAI, 点击s ...
- 深入解析GBDT二分类算法(附代码实现)
目录: GBDT分类算法简介 GBDT二分类算法 2.1 逻辑回归的对数损失函数 2.2 GBDT二分类原理 GBDT二分类算法实例 手撕GBDT二分类算法 4.1 用Python3实现GBDT二分类 ...
- 深入理解GBDT二分类算法
我的个人微信公众号: Microstrong 微信公众号ID: MicrostrongAI 微信公众号介绍: Microstrong(小强)同学主要研究机器学习.深度学习.计算机视觉.智能对话系统相关 ...
- 二分类最优阈值确定_机器学习 | 详解GBDT在分类场景中的应用原理与公式推导...
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是机器学习专题的第31篇文章,我们一起继续来聊聊GBDT模型. 在上一篇文章当中,我们学习了GBDT这个模型在回归问题当中的原理.GBD ...
- 机器学习Sklearn实战——梯度提升树二分类原理
一.算法使用 (一)创建 (二)参数调整 cross_val_score:求单一参数最合适的值(KNN) GridSearchCV网格搜索:多参数组合最优的值 标准:准确率,精确率,召回率,F1 (三 ...
- ML之xgboost:利用xgboost算法对breast_cancer数据集实现二分类预测并进行graphviz二叉树节点图可视化
ML之xgboost:利用xgboost算法对breast_cancer数据集实现二分类预测并进行graphviz二叉树节点图可视化 目录 实现结果 实现代码 实现结果
最新文章
- Java IO流之随机读写流RandomAccessFile
- 使用JProfiler查看GC Roots
- vue子组件改变父组件的值
- java虚拟机的俩种异常
- MATLAB-矩阵基本语法知识
- yaml,json,ini这三种格式用来做配置文件优缺点
- IntelliTrace 调试、定位异常
- 【转】c#中@的3种作用
- css选择指定class的元素
- zeroc ice的概念、组成与服务
- 魔兽世界python脚本拍卖行_Python大法之告别脚本小子系列—信息资产收集类脚本编写(上)...
- 在64位机器上无法调用迅雷的问题
- c语言中基本数据类型printf()对应格式
- centos7安装tomcat8
- uniapp 获取时间戳
- H264、H265编码概念及I帧P帧B帧
- 曾国藩-200句名言归纳
- ppt画图画不下——调整ppt页面的大小
- 训练faster rcnn报错:KeyError:‘max_overlaps’
- Html手机web背景全屏,使用全屏背景的网页设计欣赏 全屏网页背景教程