Рубрики
Без рубрики

Простая система рекомендации с использованием Pandas Corrwith () Метод

Какова система рекомендации? Если вы используете Netflix или Amazon, вы уже видели результаты систем рекомендаций – Рекомендации по фильмам или товарам, которые соответствуют вашему вкусу или потребностям. Таким образом, по своей основной систему рекомендации является статистический алгоритм, который вычисляет сходства на основе предыдущих вариантов или функций и рекомендует пользователей, которые … Простая система рекомендации с использованием метода Pandas Corrwith () Подробнее »

Автор оригинала: Lukas.

Какова система рекомендации?

Если вы используете Netflix или Amazon, вы уже видели результаты систем рекомендаций – Рекомендации по фильмам или товарам, которые соответствуют вашему вкусу или потребностям. Таким образом, по своей основной систему рекомендации является статистическим алгоритмом, который вычисляет сходства на основе предыдущих вариантов или функций и рекомендует пользователей, которые можно посмотреть, или что еще им нужно купить.

Как работает система рекомендаций?

Предположим, что люди A и B вроде фильма M1 и человек A также любит фильм M2. Теперь мы можем заключить, что человек B также понравится фильм M2 с высокой вероятностью. Ну, это очень мало данных и, вероятно, довольно неточный прогноз. Тем не менее, это иллюстрирует, как работает совместная фильтрация. В настоящем мире нам нужно гораздо больше данных, чтобы сделать хорошие рекомендации. Алгоритмы рекомендаций на основе этой концепции называются Совместная фильтрация Отказ

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

Реализация системы рекомендации

Если вы хотите понять код ниже лучше, убедитесь, что Подпишитесь на наш бесплатный курс по электронной почте «Введение в Пандас и науки о данных» на нашем Академия электронной почты Отказ На протяжении всего курса мы разрабатываем систему рекомендации для фильмов. В своем ядре есть метод Corrwith () из библиотеки Пандас.

Это окончательная реализация нашей системы рекомендации:

Как использовать Pandas Corrwith () метод?

Pandas Object DataFrame предлагает метод Corrwith () которые вычисляют попарные корреляции между DataFrames или DataFrame и серией. С осью параметров вы можете либо вычислить корреляции вдоль рядов или столбцов. Вот полная подпись, синие параметры являются необязательными и имеют значения по умолчанию.

Аргументы подробно: 1.) Другое: серия или dataframe, с помощью которого для вычисления корреляции. 2.) Ось: Pass 0 или «индекс» для вычисления корреляционных столбцов-мудрых, 1 или «столбцов» для ROW-WISE. 3.) падение: бросить недостающие индексы из результата. 4.) Способ: алгоритм, используемый для вычисления корреляции. Вы можете либо выбрать из: «Pearson», «Kendall» или «SPEARMAN» или внедрить свой собственный алгоритм. Итак, либо вы проходите одну из трех строк или Callable. Вот практический пример:

import pandas as pd

ratings = {
'Spider Man':[3.5, 1.0, 4.5, 5.0],
'James Bond':[1.0, 2.5, 5.0, 4.0],
'Titanic':[5.0, 4.5, 1.0, 2.0]
}

new_movie_ratings = pd.Series([2.0, 2.5, 5.0, 3.5])
all_ratings = pd.DataFrame(ratings)

print(all_ratings.corrwith(new_movie_ratings))

Из данного словаря списков (рейтингов) мы создаем dataframe. Это Dataframe имеет три столбца и четыре ряда. Каждый столбец содержит рейтинги фильма всех четырех пользователей. Серия New_movie_Ratings содержит рейтинги для нового фильма всех четырех пользователей. Использование метода Corrwith () На DataFrame мы получаем корреляцию между новыми рейтингами и старыми. Выходного выхода фрагмента выше:

Spider Man    0.566394
James Bond    0.953910
Titanic      -0.962312

Как видите, новый фильм имеет самую высокую корреляцию с фильмом Джеймса Бонда. Это означает, что система рекомендации, которая работает исключительно на основе рейтингов, должна рекомендовать фильму James Bond для пользователей, которые понравился новый фильм. Тем не менее, что именно корреляция?

Что такое корреляция?

Корреляция описывает статистическую связь между двумя объектами. Это сказать, именно два переменных движутся по отношению друг к другу. Корреляция дана в виде значения между -1 и +1. Однако корреляция не является причиной!

Есть три типа корреляции:

  • Позитивная корреляция: Положительная корреляция – это значение в диапазоне 0,0 <С.0. Корреляция 1.0 означает, что если первая переменная движется вверх, вторая также будет двигаться вверх. Эти отношения слабее, если корреляция ниже 1,0.
  • Отрицательная корреляция: Отрицательная корреляция – это значение в диапазоне 0,0> C> = -1.0. Отрицательная корреляция означает, что две переменные имеют противоположное поведение. Итак, если первый движется второй, движется вниз.
  • Ноль или без корреляции: Корреляция нулевых средств означает отсутствие отношений между двумя переменными. Если первая переменная движется вверх, вторая может сделать что-либо еще.

Оригинал: “https://blog.finxter.com/a-simple-recommendation-system-with-pandas/”