Algorithm 众包排名的最佳匹配算法?
我想建立一个系统,从20-2000个项目的集合中众选最好的10个项目(前十名的排名并不重要)。有一篇优秀的stackoverflow文章,介绍了在服务器上进行实际排序的算法 . 我倾向于在两个项目之间询问用户最喜欢哪一个,然后使用算法Algorithm 众包排名的最佳匹配算法?,algorithm,sorting,crowdsourcing,Algorithm,Sorting,Crowdsourcing,我想建立一个系统,从20-2000个项目的集合中众选最好的10个项目(前十名的排名并不重要)。有一篇优秀的stackoverflow文章,介绍了在服务器上进行实际排序的算法 . 我倾向于在两个项目之间询问用户最喜欢哪一个,然后使用算法 我的问题是,我正在使用类似于TrueSkill的东西,决定向用户显示哪些项目对以进行评分的最佳算法是什么?我将有有限的机会询问人们最喜欢哪些项目,因此,重要的是,所呈现的配对将为系统提供最有价值的信息,以确定前10名。同样,我最感兴趣的是找到前十名,而不是其他项
我的问题是,我正在使用类似于TrueSkill的东西,决定向用户显示哪些项目对以进行评分的最佳算法是什么?我将有有限的机会询问人们最喜欢哪些项目,因此,重要的是,所呈现的配对将为系统提供最有价值的信息,以确定前10名。同样,我最感兴趣的是找到前十名,而不是其他项目之间的排名,甚至前十名之间的排名。这个问题非常类似于组织一场淘汰赛,在这场比赛中,球员的技能并不广为人知,球员的数量也非常多(想想学校级别的网球比赛)。由于循环赛(O(n^2)比赛)非常昂贵,但简单的淘汰赛过于简单,通常的选择是采用k淘汰制。基本上,每个球员(在您的上下文中)都是一个项目在输掉k场比赛后被淘汰。请看双淘汰结构:
也许您可以对其进行充分修改以满足您的需要。另一个著名的算法是用来计算围棋或国际象棋比赛中的排名。您可以查看同时计算此类配对和排名的算法。应该可以截断此算法,使其只生成一组10最好的东西 你可以在中找到更多细节,他在那里描述了实际的优化算法(不幸的是,论文是用德语写的)