Repository navigation
Using ndcg_exp_gain=False for non-exponential nDCG loss in XGBoost rank:ndcg #11490
Replies: 1 comment
|
For the objective, yes. The catch on 3.0.0 is the eval metric. The built-in Two smaller things. With binary labels the flag changes nothing, since 2^1 - 1 = 1, so it only matters for graded labels. There, linear gain treats every grade step alike (a 4 ranked below a 3 costs the same as a 1 below a 0, at the same positions), while exponential gain puts most of the weight on getting the top grades first. I'd choose based on how much more a perfect result is worth to your users than a decent one. Also, with exp gain off the non-negative label check goes away too, so validate labels ≥ 0 yourself. I read the 3.0.0 and 3.4.2 source for this but haven't run it. |
Uh oh!
There was an error while loading. Please reload this page.
I'm using XGBoost version 3.0.0 to train a Learning to Rank model with the
rank:ndcgobjective. I would like to train the model using the non-exponential (linear gain) version of the nDCG listwise loss, so I set the parameter:ndcg_exp_gain = FalseI’m posting to confirm a couple of things:
Any clarification or best practices would be greatly appreciated!
All reactions