美文网首页
lgb 修改 feval 、fobj

lgb 修改 feval 、fobj

作者: 朱三分 | 来源:发表于2019-12-31 16:10 被阅读0次

    fobj

    https://www.cnblogs.com/chenxiangzhen/p/10962983.html

    https://cloud.tencent.com/developer/article/1357671

    https://zhuanlan.zhihu.com/p/75380044

    我们知道了该如何在XGBoost/LightGBM中实现自定义objective:那就是objective是否处处存在1-2阶梯度不重要,是不是严格按照梯度公式实现也不重要。

    而是要选择一个合适1-2阶“梯度”函数,使得按照XGBoost/LightGBM自己的打分公式计算完后的结果性质接近于原目标的结果(分裂的特征次序和位置)。

    当然这是比较难实现的,我们也可以弃疗之,总之都只是一个弱模型,我们也没必要都做的那么精确不是?

    不过这里倒是给了我们一些启示:

    如果你的objective不是MSE,那么是否应该在计算分裂点的时候,对数据中的长尾数据做一些处理以减小他们对分裂位置的影响?

    我们是否应该寻找另一个objective的近似方式,使得在这之上的常用objective表示更接近于精确结果。很明显,[1]中的2阶泰勒展开及其选择的位置并不是一个足够好的方式。

    标准实现的GBDT对于label的量纲应该不敏感(排除正则的因素),但在上述objective近似的时候,就无法做这种假设了,试试不同的单位可能会有意外收益。

    相关文章

      网友评论

          本文标题:lgb 修改 feval 、fobj

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