说到learning to rank,大家应该都比较熟悉,但是说到用XGB做learning to rank,很少有人实现过.举个例子,比方说赛马,我们可以基于马的个头,体重,历史战绩等信息,建立XGB...Learning To Rank
?...回到XGBoost,有3个目标函数,Point Wise,Pairwise和Listwise,这3种方法都可以用来排序,每个方法都有其优缺点.对于pointwise而言,每次仅仅考虑一个样本,预估的是每一条和...下指明哪些样本要放到一起进行排序.同时特别需要注意的是,在训练集和测试集进行拆分时,需要按query id进行分割,如果直接随机拆分,同一个query id下的数据就会被分开,这样会导致模型出问题.我们可以用如下代码进行拆分...然后我们就可以建模了,可以用XGBRanker训练排序模型,在这个场景下,我们无法自定义objective,也无法自定义mertic了.