I am experimenting with a customized loss function which requires the target to be multi-dimensional. However, I am not able to convert my dataset including the target in xgb.DMatrix() type since the labels are required to be only one-dimensional. Is there a way how to pass the labels to the customized loss function without converting them to xgb.DMatrix()? I have tried encoding the target vector to one number and subsequently decoding it back to the vector in the customized loss function. Unfortunately, this approach failed due to rounding and it does not seem to be a proper way of solving this issue. Thanks!