美文网首页
20.11.16 xgboost初探

20.11.16 xgboost初探

作者: mpcv | 来源:发表于2020-11-16 21:39 被阅读0次

    0. 提升树

    首先要明确一点,xgboost 是基于提升树的。

    什么是提升树,简单说,就是一个模型表现不好,我继续按照原来模型表现不好的那部分训练第二个模型,依次类推。

    来几个形象的比喻就是:

    做题的时候,第一个人做一遍得到一个分数,第二个人去做第一个人做错的题目,第三个人去做第二个人做错的题目,以此类推,不停的去拟合从而可以使整张试卷分数可以得到100分(极端情况)。

    把这个比喻替换到模型来说,就是真实值为100,第一个模型预测为90,差10分,第二个模型以10为目标值去训练并预测,预测值为7,差三分,第三个模型以3为目标值去训练并预测,以此类推。

    1. xgboost原理解读

    1.0 学习路径

    我们xgboost的学习路径可以按照下面四个步骤来:

    (1)构造原始目标函数问题:
    xgboost目标函数包含损失函数和基于树的复杂度的正则项;

    (2)泰勒展开问题:
    原始目标函数直接优化比较难,如何使用泰勒二阶展开进行近似;
    (3)树参数化问题:
    假设弱学习器为树模型,如何将树参数化,并入到目标函数中;这一步的核心就是要明白我们模型优化的核心就是优化参数,没有参数怎么训练样本,怎么对新样本进行预测呢?

    (4)如何优化化简之后的目标函数问题:
    优化泰勒展开并模型参数化之后的的目标函数,主要包含两个部分:

    • 如何求得叶子节点权重
    • 如何进行树模型特征分割

    1.1 目标函数

    1.1.0 原始目标函数
    目标函数,可以分为两个部分,一部分是损失函数,一部分是正则(用于控制模型的复杂度)。

    xgboost属于一种前向迭代的模型,会训练多棵树。

    对于第t颗树,第i个样本的,模型的预测值是这样的:

    相关文章

      网友评论

          本文标题:20.11.16 xgboost初探

          本文链接:https://www.haomeiwen.com/subject/xtbzbktx.html