Тренды / Лучшее / Лучший алгоритм Сортировки

Цели

  • В течение дня новые сообщения и комментарии должны быть вверху, чтобы за них можно было проголосовать.
  • Примерно через день или более того фактор времени должен исчезнуть.
  • Использовать логарифмическую шкалу, так как голоса имеют тенденцию к снежному кому, и поэтому первые 10 голосов так же важны, как и следующие сотни.

Реализации

Reddit

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

Hacker News

Хотя намного превосходит реализацию Reddit по снижению оценок с течением времени, Алгоритм ранжирования Hacker News всё же не использует логарифмическую шкалу для оценок.

Lemmy

Уравновешивает эффект снежного кома голосов с течением времени с помощью логарифмической шкалы. Сводит на нет неотъемлемое преимущество ранних комментариев, но при этом гарантирует, что голоса по-прежнему имеют значение в долгосрочной перспективе, не разрушая старые популярные комментарии.

Rank = ScaleFactor * log(Max(1, 3 + Score)) / (Time + 2)^Gravity

Score = Upvotes - Downvotes
Time = time since submission (in hours)
Gravity = Decay gravity, 1.8 is default
  • В Lemmy такой же алгоритм Классификатор как наверху, разделяя на два: Активный, и Лучший.
    • Активный использует голосование за публикацию и время последнего комментария (ограничено двумя днями).
    • Лучший использует голоса за публикацию и время опубликования.
  • Используйте Макс (1, балл), чтобы убедиться, что на все комментарии влияет замедление времени.
  • Прибавьте 3 балла, чтобы все, у кого меньше 3 голосов против, выглядили новыми. В противном случае все новые комментарии останутся нулевыми, внизу.
  • Знаки и абв оценки необходимы для работы с журналом отрицательных оценок.
  • Масштабный коэффициент 10k получает ранг в целочисленной форме.

График ранга за 24 часа, баллов 1, 5, 10, 100, 1000 с масштабным коэффициентом 10k.

Подсчёты Активных Пользователей

Lemmy также показывает количество * активных пользователей * для вашего сайта и его сообществ. Они подсчитываются в течение последнего дня, недели, месяца и полугодия и кэшируются при запуске lemmy и каждый час.

Активный пользователь - это тот, кто опубликовал или прокомментировал на вашем инстансе или сообществе в течение последнего заданного периода времени. При подсчете сайтов учитываются только локальные пользователи. В подсчет сообщества включены федеративные пользователи.