首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >XGBoost python自定义目标函数

XGBoost python自定义目标函数
EN

Stack Overflow用户
提问于 2018-05-03 21:48:25
回答 1查看 2.4K关注 0票数 3

根据文档,http://xgboost.readthedocs.io/en/latest/python/python_api.html如果我们想要定义自定义目标函数,它应该有签名

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
objective(y_true, y_pred) -> grad, hess

哪里

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
hess: array_like of shape [n_samples]
The value of the second derivative for each sample point

但是,如果我们有损失函数,依赖于N个变量,我们应该有二阶导数的NxN矩阵,但是我们的hess的形状只有Nx1。我们应该排除“交叉变量”的衍生工具吗?还有别的吗?

EN

回答 1

Stack Overflow用户

发布于 2018-05-04 10:54:19

我认为,你必须取的导数是关于Booster返回的分数。因此,它导致每个训练示例(=sample)有一个值,从而导致n_samples数组。得分是进入目标函数的值,即在MSE中的(x-m)**2中的x或逻辑函数中的1/(1+exp(-x))

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50164303

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文