我可以使用哪些指标来验证和测试Lemur项目中RankLib库中的RankNet?

时间:2017-03-29 09:44:01

标签: java ranking metrics ranking-functions lemur

我目前正在使用具有保持集的RankNet算法(-ranker 4)的RankLib实现。我在终端中使用jar文件来运行它。

documentation规定:

  

metric2t(例如NDCG,ERR等)仅适用于列表方式算法   (AdaRank,Coordinate Ascent和LambdaMART)。逐点和成对   技术(MART,RankNet,RankBoost),由于其性质,总是使用   他们的内部RMSE /成对损失作为优化标准。

然而,当我将'metrics2t'设置为ERR @ 10或NDCG @ 10时,它开始训练并验证我选择的指标而不是'RMSE'。

This is part of the table outputted when I run RankNet with ERR@10.

我是否遗漏了一些东西,因为这似乎与我相矛盾。

感谢。

1 个答案:

答案 0 :(得分:0)

我不确定,但是,我认为即使它打印出这些指标的结果,也不会对它们进行优化。

图书馆的开发人员只是将其留在那里,至于其他方法,通常使用其中一个指标进行验证。在培训期间,没有办法简单地将计算结果从指标上移开。

现在我正在训练一个RankNet模型,似乎ERR @ 10的训练和验证数据实际上正在增加,而"%错误排序的对"正在减少。