Як порівняти два алгоритми ранжування?


12

Я хочу порівняти два алгоритми ранжування. У цих алгоритмах клієнт вказує деякі умови у своєму пошуку. Відповідно до вимог клієнта, цей алгоритм повинен призначити бал для кожного елемента в базі даних та отримати елементи з найвищими балами.

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

Мій алгоритм сортує результати, тому перший пункт у моєму списку результатів - найкращий із найвищим балом, другий - другий найкращий бал тощо. Я обмежую свій алгоритм пошуку, наприклад, щоб знайти 5 найкращих результатів. Результати - це найкращі 5 найпопулярніших результатів. Отже, точність буде 1. Коли я обмежую свій пошук, щоб знайти найкращий результат, він знаходить найкращий. Знову ж таки, точність буде 1. Але проблема в тому, що це неприйнятно для людей, які бачать цей результат.

Що я можу зробити? Як я можу порівняти ці алгоритми і показати, що один кращий за інший?

Відповіді:


6

Знижений накопичувальний приріст (DCG) - одна з найпопулярніших показників, яка використовується для оцінки ранжирування будь-якої пошукової системи. Це показник якості ранжування. У пошуку інформації його часто використовують для вимірювання ефективності веб-пошукової системи.

Він ґрунтується на таких припущеннях:

  1. Високорелевантні документи є більш корисними, якщо вони з’являються раніше в результатах пошуку.
  2. Високорелевантні документи є більш корисними, ніж незначно релевантні документи, які кращі за невідповідні документи.

Формула DCG йде наступним чином:

(1)DСГp=i=1prелiлог2(i+1)=rел1+i=2prелiлог2(i+1)

Де:

  • i - повернене положення документа в результаті пошуку.
  • rелi
  • підсумовування по p (кількість повернутих результатів), отже, накопичений накопичувальний прибуток дає показники ефективності повернутого результату.

DCG є похідним від CG (сукупний приріст) , заданий:

(2)СГp=i=1prелi

СГp

(3)DСГp=i=1p2rелi-1лог2(i+1)

pDСГp

Для подолання цього питання пропонується нормалізований DCG (nDCG) . Це дано,

нDСГp=DСГpЯDСГp

ЯDСГpDСГp

ЯDСГp=i=1|RЕL|2rелi-1лог2(i+1)

Де | REL | - це перелік документів, упорядкований за релевантністю у корпусі до позиції p.

Для ідеального алгоритму ранжування,

DСГp=ЯDСГp

Оскільки значення nDCG масштабуються в межах [0,1], порівняння перехресних запитів можливе за допомогою цих показників.

Недоліки: 1. nDCG не скасовує отримання поганих документів у результаті. Це можна виправити, скоригувавши значення релевантності, що приписуються документам. 2. nDCG не карає відсутні документи. Це можна виправити, встановивши розмір пошуку та використовуючи мінімальний бал для відсутніх документів.

Зверніться до цього, щоб побачити приклад обчислень nDCG.

Довідково


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.