美文网首页
xgboost为什么要用泰勒展开

xgboost为什么要用泰勒展开

作者: Smile_未来可期 | 来源:发表于2020-06-01 12:21 被阅读0次

xgboost使用了一阶和二阶偏导, 二阶导数有利于梯度下降的更快更准. 使用泰勒展开取得函数做自变量的二阶导数形式, 可以在不选定损失函数具体形式的情况下, 仅仅依靠输入数据的值就可以进行叶子分裂优化计算, 本质上也就把损失函数的选取和模型算法优化/参数选择分开了. 这种去耦合增加了xgboost的适用性, 使得它按需选取损失函数, 可以用于分类, 也可以用于回归。

实际上使用二阶泰勒展开是为了xgboost能够自定义loss function,如果按照最小二乘法的损失函数直接推导,同样能够得到xgboost最终的推导式子。

此外,Xgboost官网上有说,当目标函数是MSE时,展开是一阶项(残差)+二阶项的形式(官网说这是一个nice form),而其他目标函数,如log loss的展开式就没有这样的形式。为了能有个统一的形式,所以采用泰勒展开来得到二阶项,这样就能把MSE推导的那套直接复用到其他自定义损失函数上。简短来说,就是为了统一损失函数求导的形式以支持自定义损失函数。当然,这是从为什么会想到引入泰勒二阶的角度来说的。

相关文章

  • xgboost为什么要用泰勒展开

    xgboost使用了一阶和二阶偏导, 二阶导数有利于梯度下降的更快更准. 使用泰勒展开取得函数做自变量的二阶导数形...

  • XGBoost二阶泰勒展开公式推导

    目标函数:其中是真实值,是总t棵树的预测值,是loss function,是正则项,防止过拟合。是一棵CART树,...

  • xgboost学习笔记 + GBDT

    从泰勒公式说起 泰勒公式损失函数存在二阶导数的时候,可以提供参数下降的方向梯度下降法的泰勒展开理解.png 为什么...

  • 泰勒展开式

    题目 答案

  • 秋招面经

    项目相关 为什么选取 XGBOOST? xgboost 相对于 svm、LR 有更好的效果。 xgboost 相对...

  • 运动学模型模型线性化-离散化

    泰勒展开公式 高阶偏导数

  • 核函数--高斯核函数

    高斯核函数函数的泰勒(Taylor)展开式

  • 人工智能学习笔记-Day06

    继续泰勒公式 表达项是否收敛是泰勒级数无限展开是否合理的关键 单看通项,是收敛的。 重点看系数项是否收敛。泰勒级数...

  • 牛顿法、拟牛顿法

    牛顿法: 根据二阶泰勒展开,用一阶和二阶倒数确定参数迭代步长和方向 设初始向量,它在处的泰勒展开如下: ,当时 注...

  • 微积分基础

    写在前面 知识点 函数 导数 微积分 偏导数 凸函数定义凸函数的性质 泰勒展开式泰勒公式的应用泰勒公式的推导 总结...

网友评论

      本文标题:xgboost为什么要用泰勒展开

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