R Xgboost-如何根据另一列的值以及错误创建自定义损失函数

R Xgboost-如何根据另一列的值以及错误创建自定义损失函数,r,xgboost,R,Xgboost,在R中实现xgboost训练的最近加权(即将权重向量传递给xgb.dmatrix)时,我遇到了问题-虽然加权会影响训练集的学习曲线读数,但似乎对实际生成的模型没有任何影响-测试集中的性能是相同的 我似乎无法找到这个问题的根源,也无法生成一个可复制的示例。因此,我想将功能的Date列传递给自定义损失函数,类似于: custom_loss <- function(preds,dat) { labels <- getinfo(dat,"label") dates <- [a

在R中实现xgboost训练的最近加权(即将权重向量传递给xgb.dmatrix)时,我遇到了问题-虽然加权会影响训练集的学习曲线读数,但似乎对实际生成的模型没有任何影响-测试集中的性能是相同的

我似乎无法找到这个问题的根源,也无法生成一个可复制的示例。因此,我想将功能的Date列传递给自定义损失函数,类似于:

custom_loss <- function(preds,dat) {
  labels <- getinfo(dat,"label")
  dates <- [a vector corresponding to the dates associated with each prediction]
  grad = f(dates)*-2*(labels - preds)
  hess = f(dates)*2
  [where f is an increasing function of the value in dates, so later samples matter more when training]
  return(list(grad=grad,hess=hess))
}
custom\u损失