已知非平衡二类问题随机准确率基准,求F-measure随机基准水平
F-score的随机基准水平(非平衡二类问题)
好问题!在非平衡二类任务里,搞清楚指标的随机基准确实很重要,尤其是F-score这种兼顾精确率和召回率的指标。先结合题目给出的前提一步步拆解:
首先明确题目里的「随机准确率基准」对应的分类器:题目说这个基准是多数类样本数量/总样本数量(记为p),这对应的是「无脑预测多数类」的分类器——不管输入特征是什么,全部猜成数量占比更高的那个类别,它的准确率正好是p,这就是题目定义的随机准确率基准。
接下来分场景看F-score的基准水平:
针对少数类的F-score(最常见场景)
在非平衡问题中,我们通常更关心少数类的识别效果。而这个「全猜多数类」的分类器从来不会预测少数类,因此对于少数类来说,真正例(TP)的数量为0,召回率直接为0。由于F-score的计算依赖精确率和召回率,只要其中一项为0,F-score就等于0。所以这种情况下,F-score的随机基准是0。针对多数类的F-score
如果我们非要计算多数类的F-score:- 精确率(P):所有预测为多数类的样本中,真正属于多数类的比例,也就是
p(因为总样本里多数类占比就是p) - 召回率(R):所有真实的多数类都被正确预测了,所以召回率为1
代入F1-score公式:
F1 = 2*(P*R)/(P+R) = 2*p/(p+1)得到多数类的F-score随机基准为
2p/(p+1)。- 精确率(P):所有预测为多数类的样本中,真正属于多数类的比例,也就是
宏观F-score(两类F-score的平均)
如果取两个类别的F-score的算术平均,宏观F-score的随机基准就是:宏观F1 = (多数类F1 + 少数类F1)/2 = p/(p+1)
不过需要强调:在实际的非平衡问题分析中,我们几乎不会关注多数类的F-score,所以默认情况下,我们讨论的F-score随机基准(针对核心关注的少数类)是0。
内容的提问来源于stack exchange,提问作者cyberic
相关产品推荐
相关产品推荐

