algorithm - 查找具有评级值的用户最喜欢的项目

标签 algorithm rating-system

假设用户为某些电影投票,评分范围为 1 到 5。这些电影具有流派信息,并且一部电影可以有多个流派。像这样:

Movie A Rating 4
Action/Sci-Fi

Movie B Rating 5
Comedy/Action

Movie C Rating 4
Comedy/Drama

我们想了解哪种类型喜欢我们的用户。这是我们的结果集:

Genre Movie_Count Average_Rating

----------
Action 2 5
Comedy 2 4.5
SciFi 1 4
Drama 1 4

显然,我们无法用这么小的结果集预测任何事情,但让我们假设我们有一个更大的数据集。

使用这些数据,我们如何对这个用户最喜欢的类型进行排序?简单地计算加权平均值还是更复杂的东西?

最佳答案

我在这里看到的主要问题是:

用户评价 1000 部喜剧电影,平均得分为 4

用户对 10 部 Action 片的评分平均为 4.1

你如何订购它们?

参见 http://www.evanmiller.org/how-not-to-sort-by-average-rating.html供讨论和一个可能的解决方案。

另一个问题是:

如果一部电影既是喜剧又是 Action 片,并且评分为 4.0,那么它是喜剧片还是 Action 片的原因有多少?

您可以使用期望最大化来解决这个问题 http://en.wikipedia.org/wiki/Expectation%E2%80%93maximization_algorithm .

关于algorithm - 查找具有评级值的用户最喜欢的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9169143/

相关文章:

algorithm - 为什么对本地列表求和比用 `GHC -O2` 对教堂编码列表求和慢?

sql - 在文本中进行单词搜索以查找包含最匹配变体的文本

algorithm - 树中从根到叶子的预期最大路径长度

algorithm - 随机放置非重叠区间

php - 简化了 JQuery 和 PHP 星级评分

MySQL:如何将多个条件 AVG 值与 Group By 组合

python - 在python中实现合并排序时出现错误

java - 使用评级类实现赞成/反对评级

php - 如何更改 Woocommerce 星级评分的位置

CSS 5 星评级系统,星级跨度问题