I am currently using the RankLib implementation of the RankNet algorithm (-ranker 4) with a held-out set. I am using the jar file in terminal to run this.
The documentation stipulates:
metric2t (e.g. NDCG, ERR, etc) only applies to list-wise algorithms (AdaRank, Coordinate Ascent and LambdaMART). Point-wise and pair-wise techniques (MART, RankNet, RankBoost), due to their nature, always use their internal RMSE / pair-wise loss as the optimisation criteria.
However, when I set the 'metrics2t' to ERR@10 or NDCG@10, it starts to train and validate on my chosen metric rather that 'RMSE'.
This is part of the table outputted when I run RankNet with ERR@10.
Is there something that I am missing as this seems to be a contradiction to me.
Thanks.