量化数值评估,查准率和召回率

我们想知道通过采取一个方法,是否使得误差变小。如果有一个量化的数值评估,通过这个数字的大小,我们可以得到误差变大了还是变小了。在这里,推荐大家在交叉验证集上实现误差分析,而不是在测试集上。

那么怎么选择一个量化数值评估,也就是合适的误差度量值。

例如我们希望用算法来预测癌症是否是恶性的,在我们的训练集中,只有0.5%的实例是恶性肿瘤。假设我们编写一个非学习而来的算法,在所有情况下都预测肿瘤是良性的,那么误差只有0.5%。然而我们通过训练而得到的神经网络算法却有1%的误差。这时,误差的大小是不能视为评判算法效果的依据,也就是不能作为误差度量值。

因此,我们需要思考一种合适的度量。

我们将算法预测的结果分为四种情况:

1.正确肯定(True Positive真阳性,TP):预测为真,实际为真

2.正确否定(True Negative真阴性,TN):预测为假,实际为假

3.错误肯定(False Positive假阳性,FP):预测为真,实际为假

4.错误否定(False Negitive假阴性,FN):预测为假,实际为真

则:

查准率Precision = TP/(TP + FP)。例如,在所有我们预测有恶性肿瘤的病人中,实际上有恶性肿瘤的病人的百分比,越高越好。

召回率/查全率Recall = TP/(TP+FN)。例如,在所有实际上有恶性肿瘤的病人中,成功预测有恶性肿瘤的病人的百分比,越高越好。

这样,对于我们刚才那个总是预测病人肿瘤为良性的算法,其查全率为1。

那么查准率和召回率之间的关系是怎样的呢。

我们继续用预测肿瘤性质的例子。假使,我们的算法输出的结果在0-1之间,我们使用阈值0.5来预测真和假。

 若使用比0.5更大的阈值,如0.7,0.9,这样做会减少错误预测病人为恶性肿瘤的情况,同时会增加未能成功预测肿瘤为恶性的情况,这样一来,查准率会随之变大。

相反,若使用更小的阈值,预测恶性肿瘤的情况会增多,也就是查全率会随之增大。这样做的目的,是尽可能让所有可能是恶性肿瘤的病人都得到进一步的检查、诊断。

我们绘制不同阈值情况下,查准率和查全率之间的关系。

现在我们有了两个度量值:查准率和查全率。那么我们到底需要哪一个,或者说怎么权衡两者之间的关系,我们更加希望只用一个值,就能得到很好的效果。

从图中可以看出,结合实际,单独选择查准率和查全率都不合适。或者去两者的平均值也不合适,比如,一个为1,一个为0,显然是不行的。我们采用下面一种方法,解决我们的疑问。

这时计算 F1值 (F1 Score),我们选择使得F1值最高的阈值。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值