构建合理评分公式:解决评分数量与质量失衡问题
商品评分计算的合理性优化问题
我有一份包含6列(商品名称、1星至5星评分数量)的数据集,每行记录商品名称及对应星级的评分次数,示例如下:
| Item | 1星 | 2星 | 3星 | 4星 | 5星 |
|---|---|---|---|---|---|
| A | 1 | 0 | 0 | 2 | 0 |
| B | 1 | 0 | 0 | 0 | 0 |
| C | 5 | 0 | 0 | 0 | 0 |
| D | 0 | 0 | 0 | 0 | 1 |
| E | 0 | 0 | 0 | 0 | 10 |
朴素评分平均值的缺陷
- 若仅使用AVERAGE OF RATINGS(评分平均值),会出现两个不合理结果:
- D和E的得分均为5,但E的评分数量更多,理应获得更高的排名,平均值无法体现评分数量的权重
- B和C的得分均为1,但C的1星差评数量更多,理应得分更低,平均值无法区分这种差异
尝试的加权平均公式及不足
我尝试了一套兼顾评分质量与数量的加权公式:Rating = (w1 * Average Rating Score) + (w2 * ln(Total Number of Ratings))
其中:
- w1、w2为可调整权重系数,比如侧重评分质量时可设w1=0.8、w2=0.2
- Average Rating Score:商品1至5星评分的平均值
- ln(Total Number of Ratings):总评分次数的自然对数,用于弱化大量评分对平均值的过度影响
但该公式仍无法解决上述第二个问题:当商品获得更多1星差评时,总评分次数增加会让对数项数值变大,最终得分反而升高,不符合实际需求。
内容的提问来源于stack exchange,提问作者pgs0001
相关产品推荐
相关产品推荐

