Помогите подобрать алгоритм полезности



Нужно придумать алгоритм полезности. То есть:
Чем больше количество оценок (count) и средняя оценка(avg) тем полезней юзер.

Учитывать только avg как то не подходит. Выйдет что человек за которого голосовали меньше раз будет полезнее чем человек за которого голосовали больше.
Учитывать только сумму оценок тоже глупо. В топ может выйти человек у которого очень много плохих оценок.
  • Вопрос задан
  • 3047 просмотров
Пригласить эксперта
Ответы на вопрос 4
erakitin
@erakitin
Есть очень хорошая статья на эту тему.
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
K=(count+avg)/(sum+avg+1)
чем меньше — тем полезнее.

В этой формуле: sum — это сумма оценок (баллов)
(Как я понял в таблице-скрине сумма СРЕДНИХ значений: sum=avg*count)

Пример:
sum=1+2+3=6
count=3
avg=sum/count=6/3=2
(count+avg)/(sum+avg+1)=(3+2)/(6+2+1)=5/9=0.56

и

sum=1+1+1+1+1+2=7
count=6
avg=sum/count=7/6=1.167
(count+avg)/(sum+avg+1)=(6+1.167)/(7+1.167+1)=7.167/9.167=0,782

Т.е. получается, что 1-й вариант — полезнее.

PS: глубоко не тестил, написал «на вскидку»
Ответ написан
@L3n1n Автор вопроса
(Как я понял в таблице-скрине сумма СРЕДНИХ значений: sum=avg*count)

sum это среднее арифметическое.
Спасибо, попробую ваш вариант
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы