python - 如何在自定义目标函数中重现 LGBM(lightGBM)泊松损失
问题描述
在我的回归问题中,当使用 LGBM 的内置泊松损失时,我得到了非常好的模型性能。现在我试图在我的自定义目标函数中重现 LGBM 的泊松损失。
这是LGBM的泊松函数源代码:https
max_delta_step=0.7
://github.com/microsoft/LightGBM/blob/7076cb8a3ac3a7b32dcf37be5593dddf27bf7f16/src/objective/regression_objective.hpp#L446在这里配置:https ://github.com/microsoft/LightGBM /blob/7076cb8a3ac3a7b32dcf37be5593dddf27bf7f16/include/LightGBM/config.h#L792
因此,在创建自定义目标函数时,我对 poission loss 的理解可以写成:
max_delta_step = 0.7
grad_poisson = np.exp(y_pred) - y_true
hess_poisson = np.exp(y_pred + max_delta_step)
但是在不更改 LGBM 中的任何其他设置的情况下使用此代码,我的模型性能要差得多....
有谁知道如何在定制的反对函数中重现 LGBM 的泊松损失?
解决方案
推荐阅读
- ssl - 为什么即使 nginx 正在侦听并且防火墙允许 443,我也会在 ssl 上获得连接超时?
- c++ - 如何在 Windows 上获取可用 RAM?
- spring - 使用 Spring JMS 正常工作并遇到 Apache camel route 和 IBM MQ Route 问题
- c++ - 无法打开 curl/libcurl_a_debug.lib
- python-3.x - Sierpinski 的三角 Pygame 递归函数
- asp.net - 多页 Web 应用程序的会话固定问题
- jquery - 如何使用 ScrollX 正确调整 Jquery DataTables 的列:true?
- php - @Assert\NotBlank 验证在 symfony 4 中不能以嵌入式形式工作
- android - 为什么在分配了最大可能像素后,图像在 hdpi 屏幕[运行 android] 上显得模糊?
- solr - 自动建议器中的 Solr 服务器上下文过滤不起作用