任何可以确保社会排名系统中的类别多样性的算法?

时间:2011-07-14 05:25:52

标签: algorithm ranking digg reddit collective-intelligence

我正在构建一个类似于Reddit的系统,用户“喜欢”这些项目。 “喜欢”将用于确定项目的排名。还有一个“衰老”因素,最近的“喜欢”比古代的“喜欢”更重要。

总而言之,它类似于here所描述的算法。

我的问题是我需要确保结果排名中项目的多样性。每个项目属于一个类别。某些类别可能不成比例地受欢迎。我不希望首页(或第二页)中的所有项目都属于A类,而其他类别的项目无处可寻。

那么有没有聪明的算法可以确保结果的多样性 - 确保每个页面中不同类别的混合很好?

由于

1 个答案:

答案 0 :(得分:1)

对于每个类别,创建该类别中所有项目的排名。然后,当您生成Feed时,您可以选择以不同方式组合各个排名。例如,您可以随机均匀地合并类别:对于Feed中的每个点,随机选择一个类别,并从该类别中获取尚未放入Feed的排名最高的项目。