私は現在、間もなく立ち上げる予定の新しいサイトのアルゴリズムの作成に取り組んでいます。インデックス ページには、現時点で「最もホットな」投稿が表示されます。考慮すべき変数は次のとおりです。
- 投票数
- 投稿がどの程度物議をかもすか (0 ~ 1 の #)
- 投稿からの時間
私は 2 つの可能なアルゴリズムを考え出しました。最初の最も単純なものは次のとおりです。
controversial * (numVotesThisHour / (numVotesTotal - numVotesThisHour)
Denom = numVotesTuisHour if numVotesTotal - numVotesThisHour == 0
最高の数字が最もホットです
私の他のオプションは、Reddit と同様のアルゴリズムを使用することです (ただし、時間の経過とともにスコアが減少します)。
[controversial * log(x)] - (TimePassed / interval)
x = { numVotesTotal if numVotesTotal >= 10, 10 if numVotesTotal < 10
最高の数字が最もホットです
最初のアルゴリズムは、古い投稿が将来再び「ホット」になることを許可しますが、2 番目のアルゴリズムは許可しません。
私の質問は、これら 2 つのアルゴリズムのうち、どちらがより効果的だと思いますか? 現時点で本当に「ホットな」トピックを表示するのはどれだと思いますか? どちらか一方を使用することの利点または欠点を考えていただけますか? コンテンツができるだけ関連性があることを確認できるように、何も見落とさないようにしたいだけです. どんなフィードバックも素晴らしいでしょう!ありがとう!