Метрики для оценки рекомендательных систем

Итак, добро пожаловать обратно в мой новый блог об оценке систем рекомендаций. Сегодня мы собираемся погрузиться в различные метрики, которые помогут оценить современные рекомендательные системы. С некоторого времени я хотел уйти от НЛП и обработки текста и хотел изучить другие области, связанные с машинным обучением. Система рекомендаций была на первом месте в моем списке обучения, поэтому я купил курс Udemy под названием B uilding-Recommender-systems-with-machine-learning-and-ai Фрэнка Кейна. Я прошел около трети курса, и это кажется действительно хорошим началом для погружения в рекомендательные системы. Этот блог в основном вдохновлен тем, что я узнал из этого курса. Приступим 😇.

Мы начнем с самых простых показателей, которые измеряют точность рекомендательных систем.

Средняя абсолютная ошибка (MAE)

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

Среднеквадратичная ошибка (RMSE)

Это еще один распространенный и, пожалуй, самый популярный показатель оценки. Одна из причин заключается в том, что он меньше наказывает вас, когда вы приближаетесь к фактическому прогнозу, и гораздо больше, когда он далек от фактического прогноза, по сравнению с MAE.

На самом деле, мы действительно не оцениваем какие-либо современные рекомендательные системы, основанные только на точности. Системе рекомендательных систем наплевать, как бы пользователь оценил определенный фильм 🧐. Для рекомендательных систем важно то, что они помещают перед пользователями в список лучших рекомендателей, и как эти пользователи реагируют на эти фильмы, когда они видят их рекомендованными. точность для оценки рекомендательных систем. Несмотря на то, что они присудили системе, Netflix не принял ее)

Итак, если система рекомендаций не фокусируется только на точности, что им делать? 🤔

Основная задача - Top-N рекомендаций, что означает, что работа рекомендательной системы состоит в том, чтобы создать конечный список лучших вещей, которые можно было бы представить определенному человеку.

Следующие показатели используются для оценки системы рекомендаций на основе рекомендаций Top-N.

Скорость попадания

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

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

Средняя частота взаимных совпадений (ARHR)

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

Для рекомендательной системы есть еще несколько вещей. Теперь давайте посмотрим на них.

Покрытие

Проще говоря, это процент пар (пользователь, элемент), которые можно предсказать, или процент возможных рекомендаций, которые может предоставить рекомендательная система. Например, подумайте о наборе данных MovieLens для оценок фильмов. Он содержит рейтинги для нескольких тысяч фильмов, но существует множество фильмов, для которых у него нет оценок.

Поэтому, если мы используем эти данные для рекомендации фильмов на IMDB, который содержит несколько миллионов фильмов, охват будет довольно низким.

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

Разнообразие

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

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

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

Новинка

Новизна рекомендательных систем относится к тому, насколько популярны те товары, которые они рекомендуют. (т.е. средний рейтинг популярности рекомендуемых товаров)

И опять же, просто рекомендуя случайные вещи, вы получите очень высокие оценки новизны, поскольку подавляющее большинство товаров не являются самыми продаваемыми. Хотя новизна измерима, то, что с ней делать, во многом субъективно.

В рекомендательной системе есть концепция доверия пользователей. Люди хотят видеть в своих рекомендациях хотя бы несколько знакомых вещей.

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

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

Это все для этого блога. Надеюсь, тебе понравится. Если у вас есть предложения, пожалуйста, прокомментируйте.