An efficient lambadrank implementation.
As #2699 reduce the time cost on ConstructHistogram, the time cost of Boosting (get gradients and hessians) becomes relatively larger, especially for lambdarank. For example, the time cost of lambdarank objective is about 60 seconds in MSLTR, while the total time is about 180 seconds.
Code is at https://github.com/microsoft/LightGBM/blob/master/src/objective/rank_objective.hpp
There is an O(n^2) loop inside for each query, to calculate the losses over all pairs.
we may need a good way to approximate the loss.
Closed in favor of being in #2302. We decided to keep all feature requests in one place.
Welcome to contribute this feature! Please re-open this issue (or post a comment if you are not a topic starter) if you are actively working on implementing this feature.
refer to #2801 for faster rank_xendgc.
I think #3425 already largely improves the speed of lambadrank.
@guolinke
I think #3425 already largely improves the speed of lambadrank.
Great! Then I'm removing this issue from top priorities section of the roadmap.

Most helpful comment
I think #3425 already largely improves the speed of lambadrank.