Метрики для оценки алгоритмов ранжирования


15

Я заинтересован в рассмотрении нескольких различных метрик для алгоритмов ранжирования - на странице Википедии «Обучение для ранжирования» перечислены некоторые из них, в том числе:

• Средняя средняя точность (MAP);

• DCG и NDCG;

• Точность @ n, NDCG @ n, где «@n» означает, что метрики оцениваются только для первых n документов;

• среднее взаимное звание;

• Тау Кендалла

• Копьеру Ро

• Ожидаемое взаимное звание

• Яндекс найден

но мне не ясно, каковы преимущества / недостатки каждого из них или когда вы можете выбрать один из них (или что это будет означать, если один алгоритм превзойдет другой в NDGC, но будет хуже при оценке с помощью MAP).

Могу ли я узнать больше об этих вопросах?

Ответы:


29

Я на самом деле ищу тот же ответ, однако я должен быть в состоянии хотя бы частично ответить на ваш вопрос.

Все метрики, которые вы упомянули, имеют разные черты, и, к сожалению, тот, который вы должны выбрать, зависит от того, что вы на самом деле хотели бы измерить. Вот некоторые вещи, которые стоит иметь в виду:

  • Ро Спирмена метрика штрафует ошибки в верхней части списка с тем же весом, что и несоответствия в нижней части, поэтому в большинстве случаев это не показатель, который можно использовать для оценки рейтинга
  • DCG & NDCG - одна из немногих метрик, которые учитывают недвоичную функцию полезности, поэтому вы можете описать, насколько полезна запись, а не полезна ли она.
  • DCG и NDCG имеют фиксированные веса для позиций, поэтому документ в данной позиции всегда имеет одинаковый выигрыш и скидку независимо от документов, показанных над ним.
  • Вы обычно предпочитаете NDCG над ВСО , потому что нормирует значение по числу соответствующих документов
  • Предполагается, что MAP является классическим и подходящим показателем для этой проблемы, и, похоже, является стандартом в этой области.
  • (N) DCG всегда должен вычисляться для фиксированного количества записей (@k), потому что у него длинный хвост (множество не относящихся к делу записей в конце ранжирования сильно смещает показатель). Это не относится к MAP .
  • Среднее взаимное ранжирование обозначает только позицию первого релевантного документа, поэтому, если вы заботитесь о том, чтобы как можно больше релевантных документов занимало высокое место в списке, этот выбор не должен быть вашим выбором.
  • Тау Кендалла обрабатывает только двоичную функцию полезности, она также должна вычисляться @k (аналогично NDCG )

Ценные ресурсы:

Не могу опубликовать больше ссылок из-за свежего аккаунта :) Если у кого-то есть еще замечания или идеи, я был бы рад их услышать!


Я думаю, что теперь у вас достаточно очков, чтобы обновить этот ответ, если у вас есть больше ссылок.
Яш Кумар Атри

5

Во многих случаях, когда вы применяете алгоритмы ранжирования (например, поиск в Google, рекомендации по продуктам Amazon), вы получаете сотни и тысячи результатов. Пользователь хочет только смотреть сверху ~ 20 или около того. Так что остальное совершенно неактуально.

К

Если это верно для вашего приложения, то это имеет прямое влияние на показатель:

  1. КК
  2. 2К

КК

Точность классификации Top-K для ранжирования

По правде говоря, это может быть трудно определить порядок. И если вы различаете только релевантные / не релевантные, то вы на самом деле в классификационном случае!

Точность Top-n является метрикой для классификации. См. Каково определение точности Top-n? ,

точность топ-кзнак равнокак часто был хотя бы один релевантный элемент в top-k ранжирующего запроса?ранжирование запросов

К

КК[5,20]

К

Точность @ к

Точность @ кзнак равноколичество соответствующих предметов в топ-кК[0,1], выше, тем лучше

Что это говорит вам:

  • если он высокий -> Многое из того, что вы показываете пользователю, имеет к ним отношение
  • если он низкий -> Вы тратите время своих пользователей. Многое из того, что вы им показываете, не имеет к ним отношения

Напомним @ к

Напомним @ кзнак равноколичество соответствующих предметов в топ-кобщее количество соответствующих предметов[0,1], выше, тем лучше

Что это значит:

  • Если оно высоко: покажи, что у тебя есть! Вы даете им все соответствующие предметы.
  • Если оно низкое: по сравнению с общим количеством релевантных предметов, k мало / соответствующие предметы в верхнем k мало. Из-за этого, вспоминать @ k может быть не так важно. Если он сочетается с высокой точностью @ k, то увеличение k может иметь смысл.

3

Недавно мне пришлось выбрать метрику для оценки алгоритмов ранжирования с несколькими метками, и я подошел к этой теме, что было действительно полезно. Вот некоторые дополнения к ответу stpk, которые помогли сделать выбор.

  • MAP может быть адаптирован к многослойным задачам за счет приближения
  • MAP не нужно вычислять при k, но версия с несколькими метками может быть не адаптирована, когда отрицательный класс является преобладающим
  • КАРТА и (N) DCG могут быть переписаны как средневзвешенное значение ранжированных значений релевантности.

Детали

Давайте сосредоточимся на средней точности (AP), поскольку средняя средняя точность (MAP) - это просто среднее значение AP по нескольким запросам. Точка доступа правильно определяется в двоичных данных как область под кривой возврата точности, которую можно переписать как среднее значение точности для каждого положительного элемента. (видеть статью в Википедии о MAP ). Возможное приближение - определить его как среднее значение точности на каждомвещь. К сожалению, мы теряем замечательное свойство, заключающееся в том, что отрицательные примеры, расположенные в конце списка, не влияют на значение AP. (Это особенно печально, когда речь идет об оценке поисковой системы, с гораздо большим количеством отрицательных примеров, чем положительных примеров. Возможный обходной путь - это выборка отрицательных примеров за счет других недостатков, например, запросы с более положительными элементами станут одинаково трудно на запросы с несколькими положительными примерами.)

С другой стороны, это приближение обладает хорошим свойством, которое оно хорошо обобщает для случая с несколькими метками. Действительно, в двоичном случае точность в позиции k также может интерпретироваться как средняя релевантность перед позицией k, где релевантность положительного примера равна 1, а значимость отрицательного примера равна 0. Это определение вполне естественно распространяется на случай, когда существует более двух разных уровней релевантности. В этом случае AP также может быть определено как среднее значение средних релевантностей в каждой позиции.

Это выражение выбрано спикером видео, на которое ссылается stpk в своем ответе. В этом видео он показывает, что AP можно переписать как взвешенное среднее значение релевантности, весК-й элемент в рейтинге

весКAпзнак равно1Кжурнал(КК)

где Кколичество предметов для ранга Теперь у нас есть это выражение, мы можем сравнить его с DCG. Действительно, DCG также является средневзвешенным значением ранжированных релевантностей, при этом весами являются:

весКDСграммзнак равно1журнал(К+1)

Из этих двух выражений мы можем сделать вывод, что - AP взвешивает документы от 1 до 0. - DCG взвешивает документы независимо от общего количества документов.

В обоих случаях, если есть не более значимых примеров, чем соответствующих примеров, общий вес положительного может быть незначительным. Для AP обходным путем является выборка отрицательных выборок, но я не уверен, как выбрать пропорцию выборки, а также сделать ее зависимой от запроса или от количества положительных документов. Для DCG мы можем сократить его до k, но возникают такие же вопросы.

Я был бы рад услышать больше об этом, если бы кто-нибудь здесь работал над этим вопросом.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.