【问题标题】:Need a weighted scoring algorithm to combine scores with different scale需要一个加权评分算法来组合不同尺度的分数
【发布时间】:2018-02-23 12:40:18
【问题描述】:

我正在开发一个门票评分系统,每张门票可能有多达 4 种不同的分数。我想做的是将这四个分数结合在一个最终分数中,并优先考虑门票。我还想为 4 个分数中的每一个分配一个权重。 4个分数的详细信息如下:

A 分:1-5 分,期望的相对权重:2

分数 B:1-4 级,期望的相对权重:3

C 分:1-10 分,期望的相对权重:2

分数 D:1-5 级,期望的相对权重:1

一些要求:

(1) 每张票可能带有任意数量的分数,所以有时我们有全部 4 个,有时我们没有分数(需要默认最终分数)。

(2) 如果票证从多个来源获得高分,则最终得分应该更高,反之亦然。

(3)权重越高的分数对最终分数的决定作用越大

(4) 最终得分为1-4级。

我想知道是否有解决此类问题的现有算法?提前谢谢。

所需的输入和输出示例:

(1) Input:   {A:N/A, B:4, C:9, D:N/A}
Output:  {Final: 4}  

因为两个分数都是高分

(2) Input:   {A:3, B:N\A, C:8, D:1}
Output:  {Final:3}   

虽然分数D很小,但权重很小,所以我们最终得到的分数还是比较大的。

(3) Input:   {A:N\A, B:N\A, C:N\A, D:N\A}
Output:  {Final:2}

可争论的默认分数。

总体思路是按照四个分数对门票进行排名。

【问题讨论】:

    标签: algorithm


    【解决方案1】:

    为每个分数定义一个初始相对权重W

    将每个初始分数 S 从它的初始音阶 A 转换为通用分数 S' 在通用音阶 B 从 minB 到 maxB。

    如果缺少分数,请给它一个默认值,例如

    用你的新 S 计算最终分数

    a 和 b 是分数和权重的权重。

    如果你做大,那么只有真正最大的分数才会发挥价值,如果你让b大,那么只有真正最大的权重才会发挥价值。

    在 [1;2] 之间有 a 和 b 不应该太极端。如果 a 或 b 为 1,您将拥有一个正常的加权系统,它不会对更大的分数赋予更多的权重。

    【讨论】:

    • 嘿,发现这个答案非常有帮助。但是您能否提供一些直觉背后的原因?非常感谢,谢谢。
    猜你喜欢
    • 2021-03-26
    • 1970-01-01
    • 2023-02-12
    • 2015-05-13
    • 1970-01-01
    • 1970-01-01
    • 2021-01-28
    • 2018-03-25
    • 1970-01-01
    相关资源
    最近更新 更多