3

最近、Reddit の「ホットネス」公式に関するブログ記事を読みました。以下に示す式が使用されているようです。ただし、なぜそれらが選択されるのか理解できない変数がいくつかあります。この式は、自分が関わっているアプリの参考にするつもりなので、なぜこれらの変数を使ったのか根拠を知りたいです。

1st Dec 8, 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
4

1 に答える 1

4

2005年12月8日-なぜこの日付を使用するのですか?また、なぜオフセット時間を使用するのですか?エポックを使ってみませんか?これは、プラットフォームに依存しないように使用された任意の日付でしたか?

これはRedditの元のコードの「エポック」な日付だったと思います。これにより、t変数の開始がゼロに近くなり、関数がより安定した状態に保たれるため、これは適切な選択になります。

2番目-45000-なぜ45000を除数として使用するのですか?これは任意の数ですか、それとも特定の意味や目的がありますか?

これは事実上、時間のスケーリング関数です。この数値が大きいほど、年齢が方程式全体に与える影響は少なくなります。いくつかのテストの後で45000が選択され、選択されたエポックを考慮して妥当な減衰率を提供することがわかったと思います。

于 2011-03-17T16:42:30.833 に答える