模型重要评价指标精确率与召回率

  最近在回顾机器学习的相关知识,突然忘记了为什么精确率与召回率是成反比的关系,查阅许多资料后,也发现很多都晦涩难懂,思考清楚后,在此记录一下。

1.精确率与召回率公式:

精确率: precision = \frac{}{}\frac{TP}{TP+FP}(模型判断的所有正例中,实际为正例的比例)

召回率:recall = \frac{TP}{TP+FN}(实际的所有正例中,模型判断为正例的比例)

正例 P反例 N
模型正确判断 TTP        TN
模型错误判断 FFPFN

  TP:True Positive,模型预测结果为正样本,实际也为正样本,即正确判断为正
  TN:True Negative,模型预测结果为负样本,实际也为负样本,即正确判断为负
  FP:False Positive,分类器预测结果为正样本,实际为负样本,即错误判断为正,实际为负
  FN:False Negative,分类器预测结果为负样本,实际为正样本,即错误判断为负,实际为正

 各值表示如上表所示,通常都会说 精确率召回率 是成反比的,那么原因是什么呢?举例如下:
   假设我们有100个数据需要模型判断,模型输入每个数据后,输出对应的概率(假设此处指该数据为正例的概率),那么就会有一个阈值(即模型中的参数),输出概率大于这个阈值,我们判定它为正例,小于这个阈值我们判定它为反例。
   按以上的规定来看,我们可以明确知道,当阈值设置较大,比如95%时,只有跟正例很相似的数据会被判定为正例,那么此时:
   精确率会很高,接近100%,因为阈值较高,只要模型比较好,那么模型判断出来为正例的这数据,基本都会是真实的正例。
   召回率会较低,因为会有很多数据虽然也是正例,但是模型输出概率达不到95%,可能有91%,92%这个概率也很高,但是却都被判作反例,即FN较大,所以recall较小。
  同样的,如果降低阈值为60%,那么实际的正例可能会被模型全部判断为正例,此时召回率可能接近100%,但也会有很多实际的反例被模型判断为正例,即FP较大,那么precision就会较低。
  综上所述,精确率和召回率在整体上是呈现一种此消彼长的关系。

2.记录一个常见的平衡P和R的F-Measure——F1
 

                                                            F1= \frac{2*P*R}{P+R}

   由于P(Precision)和R(Recall)通常很难根据主观臆断来平衡P和R,因此会引入一些公式来平衡二者的关系,用得比较多的一个判断值就是F1

  随笔记录,有什么问题请指出
   
  

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值