Algorithm 协同投票算法的用户分布
我的应用程序的用户(实际上是一个游戏)回答问题以获得分数。问题由其他用户提供。由于数量的原因,我无法自己检查所有内容,因此我决定将过滤过程的来源推给用户(玩家)。规则很简单:Algorithm 协同投票算法的用户分布,algorithm,distribution,collaborative-filtering,Algorithm,Distribution,Collaborative Filtering,我的应用程序的用户(实际上是一个游戏)回答问题以获得分数。问题由其他用户提供。由于数量的原因,我无法自己检查所有内容,因此我决定将过滤过程的来源推给用户(玩家)。规则很简单: 向每个用户显示一个问题,将其评定为好/坏/不确定 当问题被评为“坏”的5倍时,它将从池中移除 当这个问题被评为“好”的5倍时,它将从投票中删除,并被标记为由其他没有看过它的玩家玩 如果每个人都能看到一切,这将很容易。然而,在游戏的后期阶段,用户不应该得到他们已经看到的问题。这意味着用户不应该看到所有的问题,而那些他们看
- 向每个用户显示一个问题,将其评定为好/坏/不确定
- 当问题被评为“坏”的5倍时,它将从池中移除
- 当这个问题被评为“好”的5倍时,它将从投票中删除,并被标记为由其他没有看过它的玩家玩
更新:我刚问了一个问题-我需要定期从问题库中删除固定数量的问题。我不知道是否有专门的、众所周知的算法。然而,这将是我的思路:
- 每天提交的新问题数量(F=流量)
- 良好/总提交问题之间的比率(Q=质量)
- 每位玩家每天使用的问题数量(用于玩游戏,而非评级)(GR=游戏费率)
- 每个玩家在给定的一天内评定的问题数量(RC=审查计数器)
- 已经收集选票的问题
- 用户提交的问题,这些用户有其他问题已被接受的历史记录
编辑/补遗:评论中的讨论阐明GR是固定的,每天一个问题。此外,OP声明系统中每24小时至少有一个新的批准问题。这意味着可以将上述算法简化为以下两种形式之一: 如果用户只能在回答每日问题后才能投票: 如果系统中至少有一个已批准的、不可见的问题,请让用户随意投票 如果用户在回答日常问题之前就可以投票: 如果系统中至少有两个已批准的、未看到的问题,请让用户随意投票 这是这样的,如果用户在系统上投票所有可投票的问题,然后在23:59回答他的每日问题,那么在00:00时仍有一个问题可以回答,加上24小时时间,系统将在第二天获得一个新问题
嗯 谢谢。这里有一些值:F=100,我们可以假设为unlimite