-3

我会很感激这方面的想法。想象一下,我有一个软件(约束满足求解),它可以解决一个问题并给出如下答案:

100 % A 是解决方案,

100 % B 是解决方案,

70 % C 是溶液,

50% D 是溶液,

而正确答案是 C。

想象一下,最终所有答案都将在我的系统中考虑,因此尽管不确定性较低,但提出正确答案仍然是一项成就。我不会丢弃百分比低于 100 的答案。但是,找到合适的评估函数或错误率计算很重要。

如何计算我的系统的错误率。

有人可能会说上面的例子有 100% 的错误率,因为答案既不是 A 也不是 B。如果正确答案是 B 并且只有 B 怎么办。错误率是多少?

4

1 回答 1

1

好吧,显而易见的方法是计算所有回复的平均错误。

使用平均绝对偏差 (MAD):

(|1-0| + |1-0| + |.7-1| + |.5-0|) / 4 = (1+1+.3+.5)/4 = 2.8/4 = 0.7

或均方误差 (MSE):

(|1-0|^2 + |1-0|^2 + |.7-1|^2 + |.5-0|^2) / 4 = (1+1+.09+.25)/4 = 2.34/4 = 0.585

两者都有其优点和缺点。

(上面的例子是使用 的“正确”向量0 0 1 0,但它也允许答案是例如“任何 ABC D” 1 1 1 1,例如使用 。您可以确保这些值总和为 1 或不是)。同样,如果您知道一个答案是正确的,您可能希望将算法输出归一化为总和为 1。在您的示例中,这将使 的答案正常化.3125 .3125 .21875 .15625,这可能具有较低的错误。)

于 2012-08-15T22:33:28.527 回答