我正在一个与 Yahoo! 非常相似的网站上工作。答案:用户可以发布问题,等待其他人的答案并选择更好的答案。为了识别最佳用户,有一个信誉系统,它具有以下功能:
- 一个人可以对一个用户投赞成票或反对票;
- 可以对答案投赞成票或反对票;
- 每个主题都有一个“经验”分数,每回答一个问题就会增加。
现在,如果可能的话,我想找到一种算法来结合所有这些因素,并为每个答案给出一个“可信度”分数。
到目前为止,我尝试使用诸如产品之类的东西自己做Coefficient * (UpVotes / TotalVotes)
,但它太线性了。我也尝试了其他方法,但它们不起作用(贝叶斯算法)。目前,在 Alpha 版本中,我使用的是Trustability = sqrt(GoodAnswers)
.
注意:算法必须是单独的(无需扫描整个数据库来获取平均值、总和等数据)并且尽可能快。我将在 PHP-MySQL 中实现它。