当我们同时考虑“精度”和“查全率”来计算F测度时,我们将两个测度的谐波均值而不是简单的算术平均值。
采用谐波均值而不是简单平均值的直观原因是什么?
当我们同时考虑“精度”和“查全率”来计算F测度时,我们将两个测度的谐波均值而不是简单的算术平均值。
采用谐波均值而不是简单平均值的直观原因是什么?
Answers:
在这里,我们已经有了一些详尽的答案,但是我认为有关此信息的更多信息对于一些想更深入研究的人(特别是为什么使用F度量)会有所帮助。
根据度量理论,复合度量应满足以下6个定义:
通常,我们不使用有效性,而是使用简单的F分数,因为:
现在我们有了F测度的一般公式:
通过设置beta,我们可以将更多的重点放在回忆或准确性上,因为beta的定义如下:
如果权重召回比精度更重要(所有相关项均已选中),则可以将beta设置为2并获得F2度量。而且,如果我们进行反向运算并且权重精度高于召回率(尽可能多的选定元素相关,例如在某些语法错误纠正方案中,例如CoNLL),我们只需将beta设置为0.5即可获得F0.5度量。很明显,我们可以将beta设置为1以获得最常用的F1度量(精度和查全率的谐和均值)。
我认为在某种程度上我已经回答了为什么我们不使用算术平均值。
参考文献:
为了进行解释,例如考虑一下30mph和40mph的平均水平是多少?如果您以每种速度行驶1小时,则2小时内的平均速度确实是算术平均值,即35mph。
但是,如果您以每种速度(例如10英里)行驶相同的距离,那么20英里以上的平均速度就是30和40的谐波平均值,大约34.3 mph。
原因是为了使平均值有效,您确实需要将值设置为相同的缩放单位。每小时英里数需要在相同小时数内进行比较;要比较相同英里数,则需要平均每英里小时数,这恰好是谐波的意思。
精确度和召回率在分子和分母上都有正值。要对它们求平均,实际上只有对它们的倒数求平均才有意义,因此对谐波表示均值。
因为它更惩罚极端价值。
考虑一个简单的方法(例如,始终返回类A)。B类有无限个数据元素,而A类有一个元素:
Precision: 0.0
Recall: 1.0
当采用算术平均值时,它将具有50%的正确率。尽管这是最糟糕的结果!使用谐波均值,F1度量为0。
Arithmetic mean: 0.5
Harmonic mean: 0.0
换句话说,要获得较高的F1,您需要 同时具有较高的精度和召回率。
调和平均值等于应由该算术平均值平均的数量倒数的算术平均值。更确切地说,使用调和平均值,您可以将所有数字转换为“平均”形式(通过取倒数),可以将其数字取算术平均值,然后将结果转换回原始表示形式(通过再次取倒数)。
精度和召回率是“自然”的倒数,因为它们的分子相同且分母不同。当分数具有相同的分母时,分数更易于通过算术平均值进行平均。
为了获得更多的直觉,假设我们将真实阳性项目的数量保持恒定。然后,通过采用精度和召回率的调和平均值,可以隐式采用误报和误报的算术平均值。从根本上讲,当真实的阳性保持不变时,阳性和阴性对您同样重要。如果一个算法有N个更多的假阳性项目,但N个更少的假阴性项目(同时具有相同的真阳性项目),则F度量保持不变。
换句话说,在以下情况下适合使用F量度:
点1可能正确,也可能不正确,如果此假设不正确,则可以使用F度量的加权变量。点2很自然,因为如果我们对越来越多的点进行分类,我们可以预期结果会按比例缩放。相对数字应保持不变。
第三点很有趣。在许多应用程序中,底片是自然的默认值,甚至可能很难或任意指定什么才算是真正的底片。例如,火灾警报每秒钟,每十亿分之一秒,每经过普朗克时间就会发生一次真正的负面事件。甚至一块岩石始终都具有这些真正的负面火灾检测事件。
或者在人脸检测的情况下,大多数情况下,您“不会正确地”返回图像中数十亿个可能的区域,但这并不有趣。有趣的情况是当您确实返回建议的检测结果或应该返回它时。
相比之下,分类准确性同样关注真阳性和真阴性,如果样本总数(分类事件)的定义明确且数量很少,则分类准确性更为合适。