• classification_report


    classification_report

    假设使用sklearn.metrics.classification_report生成的分类图像如下图所示:
    在这里插入图片描述
    列名:“精确率(precision)”、“召回率(recall)”、“F1值(f1-score)”、“样本数(support)”
    行名:“类别(0:错误;1:正确)”、“准确率(accuracy)”、“算术平均(macro avg)”、“加权平均(weighted avg)”
    weighted avg:本身的比例乘以该样本占全部样本的比例
    m a c r o   w e i g h t = ( 0.9305 + 0.9474 ) / 2 = 0.9389 w e i g h t e d   a v g = 0.9305 ∗ 7702 7702 + 10498 + 0.9474 ∗ 10498 10498 + 7702 macro\ weight=(0.9305+0.9474)/2=0.9389\\ weighted\ avg=0.9305*\frac{7702}{7702+10498}+0.9474*\frac{10498}{10498+7702} macro weight=(0.9305+0.9474)/2=0.9389weighted avg=0.93057702+104987702+0.947410498+770210498
    想要理解什么是精确率、什么是召回率、什么是F1值,我们首先需要了解混淆矩阵

    混淆矩阵

    我们在这里定义行表示真实值,列表示预测值,如下图:
    在这里插入图片描述

    • 先填写阳性P和隐性N:阳性和隐性由预测值决定凡是预测为1的都是阳性-P,凡是预测为0的都是隐性-N
      在这里插入图片描述
    • 接着填写真T假F:真假由预测值是否跟真实值一致来决定若一致,如副对角线上,则为T;若不一致,如主对角线上则为F
      在这里插入图片描述

    精确率(精准率),召回率,F1值

    精确率

    精确率:你认为是对的中,有多少是对的
    你认为对的中:即预测值为1的数量:TP+FP
    有多少是对的:TP
    P r e c i s i o n = T P T P + F P Precision=\frac{TP}{TP+FP} Precision=TP+FPTP
    精确率衡量了模型在预测正类别时的准确性

    召回率

    召回率:本来是对的中,你找回了多少对的
    本来是对的,即真实值为1的数量:TP+TN
    你找回了多少对的:TP
    R e c a l l = T P T P + T N Recall=\frac{TP}{TP+TN} Recall=TP+TNTP
    召回率衡量模型找出正类别样本的能力

    F1值

    F1值:精确率越高越好,召回率越高越好
    F 1 = 2 1 P r e c i s i o n + 1 R e c a l l ( 方便理解 ) F1=\frac{2}{\frac{1}{Precision}+\frac{1}{Recall}}(方便理解) F1=Precision1+Recall12(方便理解)
    F 1 = 2 P r e c i s i o n ∗ R e c a l l P r e c i s i o n + R e c a l l ( 标准公式 ) F1=\frac{2Precision*Recall}{Precision+Recall}(标准公式) F1=Precision+Recall2PrecisionRecall(标准公式)
    F1值综合考虑了模型的准确性和查全率

    精确率、召回率和F1值的应用

    • 医疗诊断:
      癌症检测:在医疗图像分析中,精确率和召回率可以用来评估模型对癌症病灶的检测性能。高精确率可以减少误报,高召回率可以确保不错过患者的真正癌症病变
    • 信息安全:
      垃圾邮件过滤:在垃圾邮件过滤中,精确率和召回率用于评估模型对垃圾邮件的识别性能。高精确率可降低误将正常邮件分类为垃圾邮件的情况,高召回率可确保垃圾邮件不被漏过
    • 搜索引擎:
      信息检索:在搜索引擎中,精确率和召回率用于评估检索结果的质量。高精确率确保搜索结果与用户查询高度相关,高召回率确保不错过潜在相关结果
    • 社交媒体分析:
      情感分析:在社交媒体情感分析中,精确率和召回率用于评估模型对情感类别的分类性能。高精确率可减少误分类,高召回率可确保捕捉到各种情感表达
    • 自然语言处理:
      实体识别:在实体识别任务中,精确率和召回率可用于评估模型对命名实体的识别性能。高精确率可确保标识的实体准确,高召回率可确保找到尽可能多的实体
    • 金融风险管理:
      信用评分:在信用评分模型中,精确率和召回率可用于评估模型对高风险客户的识别性能。高精确率可减少风险,高召回率可确保不错过潜在风险
    • 制造业质量控制:
      产品质量检验:在制造业中,精确率和召回率可用于评估产品质量检验模型的性能。高精确率可减少误报次品,高召回率可确保检测到尽可能多的次品

    参考文献

    1、classification_report分类报告
    2、自己画混淆矩阵,防止懵逼
    3、精确率(精准率),召回率,F1值的通俗解释

  • 相关阅读:
    Overleaf中使用 LaTex制作PPT
    Flink 写入Apache Arrow
    【算法编程心得记录】
    【面试专题】2022 年 30 大 JDBC 面试问题和答案
    C++ json-cpp库的基本使用方法
    App性能指标(安装、冷启动、卸载、平均内存/cpu/fps/net)测试记录
    vscode 打开后 默认terminal power shell 报错 名为“.C”的驱动器不存在。
    基于微信小程序的核酸检测系统源码
    java计算机毕业设计疫情下发热门诊管理系统MyBatis+系统+LW文档+源码+调试部署
    分析入门 Python 股票量化交易的原因
  • 原文地址:https://blog.csdn.net/julac/article/details/132892359