Метрики для рекомендательных систем отличаются от традиционных метрик. Здесь мы рассмотрим 9 таких показателей, которые широко используются в домене RecSys.

Метрики для рекомендательных систем отличаются от традиционных метрик, таких как точность, в том смысле, что они в основном работают в совокупности с ранжированным списком прогнозов, а не с оценками отдельных прогнозов. Это связано с тем, что для сценария рекомендательных систем бизнес-потребности, которые нам необходимо оптимизировать, почти всегда связаны с набором прогнозов в целом, а не по отдельности. При этом давайте рассмотрим 9 таких метрик, которые очень важны для этой области.

1. Точность@К

Это очень похоже на обычную точность, просто вычисляет точность для первых k элементов, упорядоченных так, как вы хотите. Таким образом, у вас есть возможность варьировать K и видеть, как меняется показатель точности.

Он имеет множество применений во всем домене поиска. Очень распространенным использованием было бы измерение производительности поисковой системы на основе ее первых 10 результатов по запросу.

2. Вспомнить@К

Подобно обычной метрике отзыва и очень похоже на указанную выше метрику Precision@K. У него есть только одна небольшая поправка в формуле по сравнению с приведенной выше.

Это полезно в тех случаях, когда есть только несколько релевантных элементов, и мы, конечно, хотим, чтобы они были в самом начале. Хорошим примером может служить измерение производительности посредством кликов пользователей по списку элементов. Большинство кликов пользователя по элементам впереди будут означать, что рекомендация работает и будет иметь высокий отзыв@K.

3. КАРТА@К

MAP@K или Mean Average Precision @K — это расширенная версия Precision@K. Хорошо иметь целостную меру точности вместо того, чтобы основывать метрику только на одном значении K. Давайте сначала посмотрим на среднюю точность@K.

Здесь N обозначает общее количество релевантных элементов в пределах K лучших элементов. rel(i) — релевантность элемента на i-й позиции. В простом случае это либо 1 (релевантно), либо 0 (нерелевантно). MAP@K — это просто среднее значение всех AP@K по всем запросам, которые у вас могут быть. Это лучшая альтернатива обеим вышеуказанным метрикам.

4. МРР

MRR или Mean Reciprocal Rank — это среднее обратное значение ранга первого релевантного элемента для каждого запроса. Написано в формулу, это идет

Здесь rank_i обозначает ранг первого релевантного элемента для i-го запроса. Это очень простой показатель. Возможно, слишком просто, чтобы его нельзя было принять широко. Однако он идеально подходит для рекомендательных систем с 1 идеальным/правильным ответом. Это может быть плохой идеей для сценария с несколькими релевантными элементами, такими как электронная коммерция.

5. Оценка R²

Теперь мы переходим к немного другой области, где мы не оцениваем напрямую ранжированный список. Оценка непосредственно в ранжированном списке иногда приводит к тому, что мы упускаем информацию, например, насколько близки (с точки зрения достоверности) 1-й и 2-й элементы в списке. Коэффициент детерминации, также известный как R², является очень удобной и полезной метрикой для задач регрессионного типа.

Здесь числитель обозначает сумму остатков (истинно-прогнозированных), а знаменатель обозначает сумму квадратов (N * дисперсия). R² может предоставить информацию о том, насколько близко рекомендации модели соответствуют истине или рекомендациям какой-либо другой модели.

6. Коэффициент Пирсона

Следуя той же природе, что и R², хотя и используя другой метод, коэффициент корреляции Пирсона помогает нам измерить сходство между двумя наборами данных. По своей сути это нормализованная ковариация между двумя переменными — отношение между их ковариацией и произведением их стандартных отклонений.

Здесь x и y — два наших набора данных. N — размер данных. Оценка Пирсона широко использовалась в прошлом в старой школе совместной фильтрации для расчета сходства между пользователями или элементами.

7. Коэффициент Спирмена

Представьте, что вы вычисляете сходство между набором рекомендаций двух моделей, используя коэффициент Пирсона с небольшой поправкой. Вместо того, чтобы вычислять корреляцию по необработанным оценкам элементов, мы вычисляем ее по рангу элементов, упорядоченных в наборе. По сути, это и есть коэффициент Спирмена. Это соотношение рангов элементов между двумя разными наборами.

Здесь R_x и R_y — это ранги в наборах x и y для каждого i'. -й элемент. Средний ранг, очевидно, равен N/2. Его можно использовать для сравнения любых двух ранжированных списков элементов.

8. НДКГ

NDCG или нормализованный дисконтированный кумулятивный прирост является широко используемой метрикой в ​​поиске информации. Он используется для расчета совокупной оценки упорядоченного набора элементов. «Дисконтная» часть метрики штрафует элементы с более высокой релевантностью, появляющиеся на более низких рангах. Нормализованная DCG доводит DCG до некоторого ранга «p» и делит его на более высокий возможный DCG, полученный путем сортировки списка (сортировка списка по показателям релевантности поместит наиболее релевантные элементы вверху, что даст наиболее оптимальный DCG)

Здесь rel_i — релевантность элемента на i’-й позиции. IDCG_p — идеальная или максимально возможная DCG до ранга p

9. Кендалл Тау

Тау Кендалла — еще одна метрика ранговой корреляции, похожая на коэффициент Спирмена в том смысле, что он измеряет. Но его формула сильно отличается от всего, что мы видели до сих пор. Тау-коэффициент Кендалла определяется как

Чтобы объяснить согласованность, возьмем пару (элемент i, элемент j) в двух списках X и Y. Пусть X_i будет рангом i'-го элемента в списке X. Тогда (i,j) согласуется, если верно одно из следующих утверждений, в противном случае не соответствует:

  1. X_iX_j и Y_iY_j
  2. X_iX_j и Y_iY_j

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

Мы не охватили все очевидно. Есть много других метрик, особенно в других областях, которые могут быть ценными метриками для различных вариантов использования в приложениях recsys. Доработка идеальной метрики оценки для конкретной проблемы является важным шагом еще до того, как пытаться решить проблему.