Я хочу порівняти два алгоритми ранжування. У цих алгоритмах клієнт вказує деякі умови у своєму пошуку. Відповідно до вимог клієнта, цей алгоритм повинен призначити бал для кожного елемента в базі даних та отримати елементи з найвищими балами.
Я читав різні теми, пов'язані з моїм запитанням на цьому веб-сайті, і шукав у мережі. Згідно з моїми пошуками, найбільш релевантною статтею, яка пояснює деякі показники для порівняння алгоритмів ранжирування, була така: Брайан Макфі та Герт Р.Г. Ланкрієт, Metric Learning to Rank, ICML 2010 ( https://bmcfee.github.io/papers/mlr .pdf ). Я думаю, що prec @ k, MAP, MRR та NDCG - це хороші показники для використання, але у мене є проблема:
Мій алгоритм сортує результати, тому перший пункт у моєму списку результатів - найкращий із найвищим балом, другий - другий найкращий бал тощо. Я обмежую свій алгоритм пошуку, наприклад, щоб знайти 5 найкращих результатів. Результати - це найкращі 5 найпопулярніших результатів. Отже, точність буде 1. Коли я обмежую свій пошук, щоб знайти найкращий результат, він знаходить найкращий. Знову ж таки, точність буде 1. Але проблема в тому, що це неприйнятно для людей, які бачать цей результат.
Що я можу зробити? Як я можу порівняти ці алгоритми і показати, що один кращий за інший?