Diversity (Разнообразие)
Diversity — оценивает, насколько разнообразными являются рекомендации. Эта метрика важна, потому что даже если рекомендательная система эффективна с точки зрения точности и полноты, предложение только похожих друг на друга продуктов может не удовлетворить всех потребностей и интересов пользователя. Высокое разнообразие предполагает, что рекомендации включают различные типы продуктов или контента, что может улучшить общее удовлетворение пользователя.
Если вы работаете с двумя матрицами NxK, где одна матрица представляет рекомендации (например, оценки или вероятности, что пользователю может понравиться элемент), а другая матрица отражает фактические пользовательские покупки или интересы, то для расчета Diversity можно использовать другой подход.
В этом случае, если ваша цель — оценить разнообразие в рекомендациях, предложенных каждому пользователю, вы можете измерить, насколько рекомендуемые элементы различаются друг от друга внутри списка рекомендаций каждого пользователя. Это может быть сделано, например, путем вычисления расстояний между элементами в пространстве признаков (если таковые доступны).
Подходы к расчету Diversity
Интра-списковое разнообразие: Мера разнообразия внутри каждого рекомендованного списка. Это можно вычислить, используя среднее всех попарных расстояний между рекомендованными элементами для каждого пользователя. Расстояние может быть вычислено с использованием различных метрик, включая косинусное расстояние, Евклидово расстояние и т.д.
Интер-списковое разнообразие: Оценка того, насколько разные списки рекомендаций для разных пользователей отличаются друг от друга.
Для первого подхода формула может выглядеть так:
Diversity=1−1N∑n=1N(2K(K−1)∑i=1K−1∑j=i+1Ksimilarity(rni,rnj))Diversity=1−N1∑n=1N(K(K−1)2∑i=1K−1∑j=i+1Ksimilarity(rni,rnj))
где:
NN — количество пользователей.
KK — количество рекомендованных элементов на пользователя.
rnirni — i-ый рекомендованный элемент для n-го пользователя.
i
n
similarity(rni,rnj)similarity(rni,rnj) — функция сходства между двумя рекомендациями, которая может быть косинусным сходством или другой метрикой в зависимости от типа данных.
Практическое использование
Если у вас есть доступ к признакам элементов, таким как описания товаров или пользовательские профили, вы можете использовать эти признаки для вычисления сходства или различия между рекомендациями. Это позволит вам точно оценить, насколько разнообразны рекомендации в рамках каждого списка и между разными пользователями.