分类模型的评价指标Fscore

小书匠深度学习

分类方法常用的评估模型好坏的方法.

0.预设问题

假设我现在有一个二分类任务,是分析100封邮件是否是垃圾邮件,其中不是垃圾邮件有65封,是垃圾邮件有35封.模型最终给邮件的结论只有两个:是垃圾邮件与 不是垃圾邮件.

经过自己的努力,自己设计了模型,得到了结果,分类结果如下:

  • 不是垃圾邮件70封(其中真实不是垃圾邮件60封,是垃圾邮件有10封)
  • 是垃圾邮件30封(其中真实是垃圾邮件25封,不是垃圾邮件5封)

现在我们设置,不是垃圾邮件.为正样本,是垃圾邮件为负样本

我们一般使用四个符号表示预测的所有情况:

  • TP(真阳性):正样本被正确预测为正样本,例子中的60
  • FP(假阳性):负样本被错误预测为正样本,例子中的10
  • TN(真阴性):负样本被正确预测为负样本,例子中的25
  • FN(假阴性):正样本被错误预测为负样本,例子中的5

1.评价方法介绍

先看最终的计算公式:

1.Precision(精确率)

关注预测为正样本的数据(可能包含负样本)中,真实正样本的比例

计算公式

例子解释:对上前面例子,关注的部分就是预测结果的70封不是垃圾邮件中真实不是垃圾邮件占该预测结果的比率,现在Precision=60/(600+10)=85.71%

2.Recall(召回率)

关注真实正样本的数据(不包含任何负样本)中,正确预测的比例

计算公式

例子解释:对上前面例子,关注的部分就是真实有65封不是垃圾邮件,这其中你的预测结果中有多少预测正确了,Recall=60/(60+5)=92.31%

3.F-score中β值的介绍

β是用来平衡Precision,Recall在F-score计算中的权重,取值情况有以下三种:

  • 如果取1,表示Precision与Recall一样重要
  • 如果取小于1,表示Precision比Recall重要
  • 如果取大于1,表示Recall比Precision重要

一般情况下,β取1,认为两个指标一样重要.此时F-score的计算公式为:

前面计算的结果,得到Fscore=(2*0.8571*0.9231)/(0.8571+0.9231)=88.89%

3.其他考虑

预测模型无非就是两个结果

  • 准确预测(不管是正样子预测为正样本,还是负样本预测为负样本)
  • 错误预测

那我就可以直接按照下面的公式求预测准确率,用这个值来评估模型准确率不就行了

那为什么还要那么复杂算各种值.理由是一般而言:负样本远大于正样本。

可以想象,两个模型的TN变化不大的情况下,但是TP在两个模型上有不同的值,TN>>TP是不是可以推断出:两个模型的(TN+TP)近似相等.这不就意味着两个模型按照以上公式计算的Accuracy近似相等了.那用这个指标有什么用!!!

所以说,对于这种情况的二分类问题,一般使用Fscore去评估模型.

需要注意的是:Fscore只用来评估二分类的模型,Accuracy没有这限制

参考

1.机器学习中的 precision、recall、accuracy、F1 Score

2.分类模型的评估方法-F分数(F-Score)

学技术之路太难,唯有坚持不懈!!!
posted @ 2018-06-06 16:55 7秒记忆的战斗机 阅读(3064) 评论(0) 编辑 收藏

发表评论

昵称:

评论内容:





不改了
退出
订阅评论

[Ctrl+Enter快捷键提交]

二分类问题F-score评判指标(转载)的更多相关文章

  1. 【分类模型评判指标 二】ROC曲线与AUC面积

    转自:https://blog.csdn.net/Orange_Spotty_Cat/article/details/80499031 略有改动,仅供个人学习使用 简介 ROC曲线与AUC面积均是用来 ...

  2. 【分类模型评判指标 一】混淆矩阵(Confusion Matrix)

    转自:https://blog.csdn.net/Orange_Spotty_Cat/article/details/80520839 略有改动,仅供个人学习使用 简介 混淆矩阵是ROC曲线绘制的基础 ...

  3. 【sklearn】性能度量指标之ROC曲线(二分类)

    原创博文,转载请注明出处! 1.ROC曲线介绍 ROC曲线适用场景 二分类任务中,positive和negtive同样重要时,适合用ROC曲线评价 ROC曲线的意义 TPR的增长是以FPR的增长为代价 ...

  4. 二分类问题中混淆矩阵、PR以及AP评估指标

    仿照上篇博文对于混淆矩阵.ROC和AUC指标的探讨,本文简要讨论机器学习二分类问题中的混淆矩阵.PR以及AP评估指标:实际上,(ROC,AUC)与(PR,AP)指标对具有某种相似性. 按照循序渐进的原 ...

  5. keras实现简单性别识别(二分类问题)

    keras实现简单性别识别(二分类问题) 第一步:准备好需要的库 tensorflow  1.4.0 h5py 2.7.0 hdf5 1.8.15.1 Keras     2.0.8 opencv-p ...

  6. 【机器学习具体解释】SVM解二分类,多分类,及后验概率输出

    转载请注明出处:http://blog.csdn.net/luoshixian099/article/details/51073885 CSDN−勿在浮沙筑高台 支持向量机(Support Vecto ...

  7. 机器学习常用性能度量中的Accuracy、Precision、Recall、ROC、F score等都是些什么东西?

    一篇文章就搞懂啦,这个必须收藏! 我们以图片分类来举例,当然换成文本.语音等也是一样的. Positive 正样本.比如你要识别一组图片是不是猫,那么你预测某张图片是猫,这张图片就被预测成了正样本. ...

  8. P,R,F1 等性能度量(二分类、多分类)

    总结自<机器学习>周志华 2.3 目录 最常用的是查准率P(precision),查全率R(recall),F1 一.对于二分类问题 二.对于多分类问题 1.macro 2.micro 最 ...

  9. 二分类Logistic回归模型

    Logistic回归属于概率型的非线性回归,分为二分类和多分类的回归模型.这里只讲二分类. 对于二分类的Logistic回归,因变量y只有“是.否”两个取值,记为1和0.这种值为0/1的二值品质型变量 ...

随机推荐

  1. Java中调用存储过程

    dao层: import java.util.Map; public interface AppGthdDao { public String gthd(Map map); } mapper层 < ...

  2. 小程序1px边框在苹果机上变粗问题

    在ios系统上1px的边框会变成2px,ui会感觉很粗 列表间隔,只需要一条边框 .border:after { position: absolute; content: ''; width: 100 ...

  3. axios源码入口以及公用方法

    axios学习笔记(公用方法) 源码地址 找到入口文件 axios/lib/axios.js var utils = require('./utils'); var bind = require('. ...

  4. Prometheus K8S部署

    Prometheus K8S部署 部署方式:https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/prometheus ...

  5. Blend 多文本控件介绍

    原文:Blend 多文本控件介绍 多文本控件 RichTextBox FlowDocumentScrollViewer FlowDocumentPageViewer FlowDocumentReade ...

  6. sitemap 文件的生成 sitemap文件和sitemapindex 索引文件的生成

    <?php /*****连接数据库 start*******/ $dbhost = "localhost"; $username = "root"; $u ...

  7. net core 记录自定义端口多个方式

    1.直接修改 . 2.代码定义 public class Program { public static void Main(string[] args) { CreateWebHostBuilder ...

  8. 实现外网远程桌面内网的电脑和外网访问内网的FTP

     基于之前两篇文章搭建了ngrok实现了内网穿透,用过了http和https的协议完成了外网访问内网的网站,这一篇教大家用tcp协议实现外网远程桌面内网的电脑和外网访问内网的FTP. 一.外网远程桌面 ...

  9. ASP.NET MVC 过滤、异常过滤器

    记录下过滤器的学习—_— APS.NET MVC中的每一个请求,都会分配给相应的控制器和对应的行为方法去处理,而在这些处理的前后如果想再加一些额外的逻辑处理,这样会造成大量代码的重复使用,这不是我们希 ...

  10. .NET 导入Excel服务器报未在本地计算机上注册 Microsoft.Jet.Oledb.4.0提供程序

    代码已经在本地运行正常,发布到服务器后,一直报未在本地计算机上注册 Microsoft.Jet.Oledb.4.0提供程序, 解决办法:读取EXCEL文件时最好使用ACE方式,jet对于高版本系统的服 ...