XGBoost是eXtreme Gradient Boosting算法的简称,为了更好的理解这个XGBoost算法的原理,基于陈天奇大神的XGBoost算法PPT,逐页研读、加注释,才算是对该算法有了一些的认识。
一、监督学习几个关键的概念
lXi 表示实数空间,第i个训练数据集; l模型:如何在给定X的基础上预测Y;常见的模型包括线性模型和回归模型:线性模型预测连续型数值,回归模型预测的是离散型数值; lW是我们需要从数据中学习的参数,来构建我们的模型;
l目标函数:在机器学习中随处可见,一般由两部分组成:损失函数+正则项;其中损失函数测量模型对数据的拟合情况;正则项衡量了模型的复杂度; l常见的损失函数:平方差(一般用于回归);交叉熵损失函数(一般用于逻辑回归); l正则项:L2和L1;
l将上面提到的知识进行总结得到: l岭回归:线性回归模型+L2正则项,用的是平方差损失函数; lLasso回归:线性回归模型+L1正则项,用的是平方差损失函数; l逻辑回归:线性模型+交叉熵损失函数,L2正则项; 将模型、参数、损失函数分开讨论在工程实现上也是有好处的;
l优化训练损失函数有利于得到一个具有预测性的模型,并且可以避免欠拟合现象; l正则项则倾向于得到一个简单的模型,从而使模型的预测更加的稳定;
二、回归树集成
l回归树(分类和回归树):整颗决策树使用的相同的规则进行树的分裂,并且每个叶子结点都会得到一个分数;
l集成树:将所有树叶子结点的结果进行汇总得到最终的预测结果;这里以年龄和是否玩电脑两个特征划分得到了两颗树,对两颗树分别预测的叶子结点的结果值汇总得到最终的结果(这里描述的其实和GBDT算法思想基本一致)。
l集成树有非常广泛的应用:GBDT(梯度提升树)、随机森林... l对特征输入的缩放比等不敏感、因此不需要进行正则化处理; l可以学习到不同特征的高级关系; l可规模化并应用到工业中;
l这里假设我们有k颗树:假设回归树的功能就是将输入转换输出成分数; l参数包括每颗树的结果和每个叶子结点的分数; l或者将这些功能当作简单的参数列表,每颗树都是得到一个参数&#x
python求和1到n平方_机器学习之XGBoost算法对陈天奇大神的PPT逐页详解及python代码实现...
最新推荐文章于 2020-12-18 23:25:23 发布
本文详细解析陈天奇大神的PPT,并通过Python实现XGBoost算法,对比单线程与多线程性能,显示XGBoost在速度上有显著优势。
摘要由CSDN通过智能技术生成