Je veux comparer deux algorithmes de classement. Dans ces algorithmes, le client spécifie certaines conditions dans sa recherche. Selon les exigences du client, ces algorithmes doivent attribuer un score pour chaque élément de la base de données et récupérer les éléments ayant les scores les plus élevés.
J'ai lu différents sujets liés à ma question sur ce site et recherché sur le net. Selon mes recherches, l'article le plus pertinent qui explique certaines mesures de comparaison des algorithmes de classement était le suivant: Brian McFee et Gert RG Lanckriet, Metric Learning to Rank, ICML 2010 ( https://bmcfee.github.io/papers/mlr .pdf ). Je pense que prec @ k, MAP, MRR et NDCG sont de bonnes mesures à utiliser, mais j'ai un problème:
Mon algorithme trie les résultats, donc le premier élément de ma liste de résultats est le meilleur avec le score le plus élevé, le deuxième résultat a le deuxième meilleur score, etc. Je limite mon algorithme de recherche pour trouver par exemple les 5 meilleurs résultats. Les résultats sont les 5 meilleurs éléments. Ainsi, la précision sera de 1. Lorsque je limite ma recherche pour trouver le meilleur résultat, il trouve le meilleur. Encore une fois, la précision sera de 1. Mais le problème est que c'est inacceptable pour les personnes qui voient ce résultat.
Que puis-je faire? Comment puis-je comparer ces algorithmes et montrer que l'un est meilleur que l'autre?