3

我最近阅读了一篇关于 Reddit“热度”公式的博文。下面显示的公式似乎是使用的公式。有几个变量我不明白为什么会选择它们。我计划使用这个公式作为我参与的应用程序的参考,所以我想知道为什么使用这些变量的基础。

2005 年 12 月 8 日 1 日 - 为什么使用这个日期?另外,为什么要使用偏移时间?为什么不使用纪元?这是使用的任意日期以便它独立于平台吗?

2nd - 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
4

1 回答 1

4

2005 年 12 月 8 日 1 日 - 为什么使用这个日期?另外,为什么要使用偏移时间?为什么不使用纪元?这是使用的任意日期以便它独立于平台吗?

我怀疑这是 Reddit 原始代码的“时代”日期。这将使它成为一个不错的选择,因为它使t变量开始接近于零,这将使函数更稳定。

2nd - 45000 - 为什么使用 45000 作为除数?这是一个任意数字还是有特定的含义或目的?

这实际上是时间的缩放函数。这个数字越大,年龄对整个方程的影响就越小。我怀疑 45000 是在经过一些测试后被选择的,并且发现在给定所选时期的情况下提供了合理的衰减率。

于 2011-03-17T16:42:30.833 回答