С нами с 03.10.06
Сообщения: 64
Рейтинг: 37
|
Добавлено: 17/12/06 в 10:45 |
Ищу формулу для расчета рейтингов и голосований. Вопрос вот в чем заключается: есть например голосование. Для одного сета был один голос, 5 баллов, а для другого сета было 100 голосов и средний балл 4.83. Хочется учитывать в формуле количество голосов и средние показатели, потому как сет например с 100 голосами и рейтингом 4.83 выше должен стоять, чем с одним голосом на 5 баллов.
Делать порог выдачи, типа дай мне все сеты, у которых минимум 5 голосов тоже не серьезно, наверняка какая-то формула должна быть.
|
|
|
|
Porn reviews
С нами с 29.02.04
Сообщения: 2255
Рейтинг: 1588
|
Добавлено: 18/12/06 в 01:59 |
А почему? Цитата: | 4.83 выше должен стоять, чем с одним голосом на 5 баллов. |
Можно например ввести коэффициент (рейтинг)х(кол-во голосов) , но нужно ли это? теряется смысл голосования.
|
|
|
|
?u=13378
С нами с 26.05.05
Сообщения: 3750
Рейтинг: 2010
|
Добавлено: 18/12/06 в 02:00 |
вводишь минимум голосов(5-10-15-30) для отображения рейтинга
|
|
|
|
С нами с 03.10.06
Сообщения: 64
Рейтинг: 37
|
Добавлено: 18/12/06 в 09:41 |
Да, словами я понимаю, что необходимо ввести какой-то коэффициент, отражающий "порог количества голосовавших" или что-то подобное, но можно ли это все перенести на математику, а не на набор условий в коде?
|
|
|
|
С нами с 24.10.04
Сообщения: 18881
Рейтинг: 9010
|
Добавлено: 18/12/06 в 10:30 |
Nicko.Ricci писал: | Да, словами я понимаю, что необходимо ввести какой-то коэффициент, отражающий "порог количества голосовавших" или что-то подобное, но можно ли это все перенести на математику, а не на набор условий в коде? |
тупо первую мысль излагаю:
порог 5 голосов
допустим, проголосовало 2 человека, поставили по 10 балов
вычисляешь среднее арифметическое (10+10+0+0+0)/5 = 4
ну примерно так)
|
|
|
|
С нами с 03.10.06
Сообщения: 64
Рейтинг: 37
|
Добавлено: 18/12/06 в 10:44 |
ibiz писал: | тупо первую мысль излагаю:
порог 5 голосов
допустим, проголосовало 2 человека, поставили по 10 балов
вычисляешь среднее арифметическое (10+10+0+0+0)/5 = 4
ну примерно так) |
Да это понятно, среднее арифметическое мне знакомо
Но тут не очень правильно получается, смотри:
10/1=10
10+9+10+9+10+9....+10/1000=9.45
Среднее арифметическое не очень хорошо, когда малое количество голосов,
Поэтому и хочется ввести какой-то коэффициент для количества голосов, чтобы
10/1=10*функция(1)=8
10+9+10+9+10+9....+10/1000=9.45*функция(1000)=9.80
Что-то типа такого, только какая функция, как считать?
Можно конечно написать в коде if голосов<5 коэффициент=0.7, if голосов<30 коэффициент=0.9, но хочется какую-то математику.
Почему именно математику? Надо вывести Х самых популярных сетов например. Все лежит в MySQL, всего сетов 1млн. Математику хочу унести на уровень MySQL, чтобы от него приходили уже только данные которые нужны, а не получать все, считать и использовать только то, что нужно
Ищу что-то типа формулы народного рейтинга на http://www.banki.ru/services/responses/
|
|
|
|
С нами с 03.10.06
Сообщения: 64
Рейтинг: 37
|
Добавлено: 18/12/06 в 10:48 |
Более правильно было бы как-то скрестить два рейтинга:
- Среднее арифметическое
- Количество проголосовавших
Но как?
|
|
|
|
С нами с 03.10.06
Сообщения: 64
Рейтинг: 37
|
Добавлено: 18/12/06 в 11:03 |
Все, нашел. Если кому интересно:
Называется это все "формула Баеса".
Взвешенный рейтинг (WR) = (v / (v+m)) x R + (m / (v+m)) x C
Где:
R = средний рейтинг статьи (mean)
v = количество голосов за статью
m = минимальное количество голосов, которое нужно набрать статье, чтобы попасть в десятку лучших (равно среднему количеству голосов за все статьи)
C = средний рейтинг всех статей журнала
|
|
|
|
С нами с 25.04.06
Сообщения: 54
Рейтинг: 6
|
Добавлено: 19/12/06 в 17:10 |
Попробовал разобрать 2 примера
1 - 4,89 -10голосов
2- 5,0 - 5 голосов
минимальное количество голосов для топа пускай будет 5
WR1=(10/(10+5))х4,89+(5/(5+10))х((4.89+5)/2)=4,907
WR2=(5/(5+5))х5+(5/(5+5))х((4.89+5)/2)=4,9725
По ходу правильно работает формула
|
|
|
|
С нами с 29.03.06
Сообщения: 57
Рейтинг: 34
|
Добавлено: 20/12/06 в 13:27 |
Я вот не пойму смысла так заморачиваться. Просто делать опросы с большими выборками. Труднее сделать - но результаты достоверней
|
|
|
|
С нами с 03.10.06
Сообщения: 64
Рейтинг: 37
|
Добавлено: 20/12/06 в 13:34 |
Ну у тебя есть новинки например, если ты сделаешь минимальный порог выборки, скажем 100 и более голосов (а менее 100 например у меня будет опять же неадекватное значение при среднем арифметическом), то новинка не сможет быстро выпрыгнуть в топ, а когда у тебя есть формула расчета, которая учитывает среднее арифметическое голосов и количество проголосовавших сразу, то рейтинг получается более адекватный.
Немного пошарил в Интернет, расчет по приведенной выше формуле очень много где используется, например imdb.com
|
|
|
|
С нами с 29.03.06
Сообщения: 57
Рейтинг: 34
|
Добавлено: 20/12/06 в 13:45 |
Спасибо. Теперь въехал.
|
|
|
|