该xgboost软件包有两个必须用于排名的文件:
train.txt与数据train.txt.group与每个观察组
我不明白每个文件中的两件事:
- 我应该使用什么作为正/负类?在排名中,没有正面/负面类别之类的东西......
- 我应该使用什么作为组?假设我有观察 x1 > x2 > x3。如何使用组来表达这种字典顺序?
该xgboost软件包有两个必须用于排名的文件:
train.txt与数据train.txt.group与每个观察组我不明白每个文件中的两件事:
自从我问了这个问题以来,似乎文档被扩展了:
我们需要提供一个“.group”文件。例如,该文件可能是
2 3这意味着,数据集包含 5 个实例,前两个实例在一个组中,其他三个在另一个组中。组文件中的数字实际上是按顺序表示实例文件中每个组的实例数。
在我的理解中,排名意味着哪个更有可能是正样本。因此它用于对测试数据进行排序以进行信息检索或推荐。
所以,每个组应该有一个正样本(可能更多?我不确定)。在文件train.txt中,第一行是实例标签(你可以在文档中看到这个)。
在组文件中,每一行是一个组的大小。所以火车数据应该按组排序,而不是打乱。
根据你的描述,也许reg:logistic就是你想要的——在label列描述x1 > x2 > x3 in [0,1],训练模型和预测,然后groupby data an