Формула популярности (с использованием голосов и возраста) - PullRequest
1 голос
/ 18 августа 2010

Мне нужно создать простую формулу для определения популярности предмета на основе голосов и возраста.

Вот моя текущая формула, которая требует некоторой работы:
30 / (дней между датой публикации и сейчас) * (количество голосов) = взвешенное голосование

Всякий раз, когда востребованный элемент разыгрывается за предмет, он проверяет, является ли его взвешенный голос> 300. Если предмет имеет взвешенный голос более 300, то он продвигается на первую страницу.

Проблема в том, что эта формула сильно затрудняет продвижение старых товаров.
30/1 день * 10 голосов = 300 (повышен)
30/5 дней * 15 голосов = 90 (не повышен)
30/30 дней * 30 голосов = 30 (не повышен)
30/80 дней * 40 голосов = 15 (не повышен)

Как я могу изменить формулу, чтобы относительно легче продвигать более старые элементы (т. Е. Сделать вышеупомянутые четыре взвешенных значения достаточно близкими)?

Ответы [ 2 ]

0 голосов
/ 18 августа 2010

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

0 голосов
/ 18 августа 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...