Мне нужно отсортировать товары по рейтингу пользователей.
Предположим, у нас есть 3 продукта {a, b, c}, и у нас есть отзывы пользователей об этих продуктах. Неважно, какой пользователь даст нам обратную связь (этот вопрос не о корреляционной фильтрации, если вы с ней знакомы - интересы пользователя здесь не так)
Каждая из этих строк представляет собой отзывы пользователей, когда они пытались сравнить 3 продукта:
a 150 баллов - b 0 баллов (этот пользователь только что сказал нам, что он думает о 2 продуктах a и b и сравнивая a и b, он считает, что если он даст 150 баллов, то b стоит 0 баллов)
a 150 баллов - c 20 баллов
c 200 баллов - это 10 баллов (несмотря на предыдущий этот пользователь считает, что c лучше, чем a)
a 200 баллов - b 40 баллов - c 100 баллов
a 150 баллов - b 50 баллов
a 150 баллов - b 20 баллов
(эти рейтинги являются лишь примерами, и в реальном мире количество продуктов и рейтингов намного больше, чем это)
Теперь мне нужен алгоритм для определения рейтинга товара по голосам пользователей. На мой взгляд, лучший способ - описать эту проблему с помощью графика корреляции и связать все продукты друг с другом.
Любая помощь или советы приветствуются.
/ ********************************************** ******************************** / **
Вы не можете просто добавить баллы и вычислить среднее значение баллов продукта. Потому что важно, как он получил свои баллы, предположим, что a набрал 800 баллов против b - тогда c получит 10 баллов против этого:
a 200 - b 0
a 200 - b 0
a 200 - b 0
a 200 - b 0
c 10 - a 0 (это означает, что c лучше, чем a)
так что определенно a лучше, чем b, но с небольшими 10 очками c получил более высокий ранг от
/ ********************************************** ****************************** /