Почему определенные переменные используются в расчетах «горячо»?

StackOverflow https://stackoverflow.com/questions/5342220

  •  27-10-2019
  •  | 
  •  

Вопрос

Я недавно прочитал пост в блоге о формуле Reddit "Hotsity". Анкет Формула, показанная ниже, кажется использованной. Есть несколько переменных, я не понимаю, почему они будут выбраны. Я планирую использовать эту формулу в качестве ссылки для приложения, в котором я участвую, поэтому я хотел бы узнать основу, почему эти переменные использовались.

1 декабря 2005 г. - Зачем использовать эту дату? Кроме того, зачем вообще использовать время компенсации? Почему бы не использовать эпоху? Была ли это произвольной датой, чтобы она была независимой для платформы?

2 -й - 45000 - Зачем использовать 45000 в качестве делителя? Это произвольное число или имеет конкретное значение или цель?

t = (time of entry post) - (Dec 8, 2005)
x = upvotes - downvotes

y = {1 if x > 0, 0 if x = 0, -1 if x < 0)
z = {1 if x < 0, otherwise x}

log(z) + (y * t)/45000
Это было полезно?

Решение

1 декабря 2005 г. - Зачем использовать эту дату? Кроме того, зачем вообще использовать время компенсации? Почему бы не использовать эпоху? Была ли это произвольной датой, чтобы она была независимой для платформы?

Я подозреваю, что это была дата «эпохи» для оригинального кода Reddit. Это сделало бы это хорошим выбором, так как он сохраняет t Переменная начинается ближе к нулю, что будет держать функции более стабильными.

2 -й - 45000 - Зачем использовать 45000 в качестве делителя? Это произвольное число или имеет конкретное значение или цель?

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top