当前位置: 首页 > news >正文

【AI知识点】召回率、精确率、准确率、F1-score和混淆矩阵

AI知识点总结:【AI知识点】
AI论文精读、项目、思考:【AI修炼之路】


召回率、精确率、准确率、F1-score和混淆矩阵,这些是评估一个分类模型性能的常用指标,我们可以通过一个简单的二分类问题来说明它们的区别。这个例子是关于邮件垃圾分类的场景,假设我们要训练一个分类器来区分电子邮件是否是垃圾邮件。

假设的分类结果:

  • 总共分类了 100 封邮件。
  • 其中,实际垃圾邮件有 20 封,非垃圾邮件有 80 封。
  • 下面这个混淆矩阵(Confusion Matrix) 展示了分类模型的四种预测结果:
实际垃圾邮件 (Positive)实际非垃圾邮件 (Negative)
预测为垃圾邮件15 (TP)10 (FP)
预测为非垃圾邮件5 (FN)70 (TN)

定义这些术语

  • 真正类(TP):模型正确预测为垃圾邮件的邮件数。这里是 15 封。(阳性
  • 假正类(FP):模型错误地将非垃圾邮件预测为垃圾邮件的邮件数。这里是 10 封。(假阳性,误报,误诊
  • 假负类(FN):模型错误地将垃圾邮件预测为非垃圾邮件的邮件数。这里是 5 封。(假阴性,漏报,漏诊
  • 真负类(TN):模型正确预测为非垃圾邮件的邮件数。这里是 70 封。(阴性

各个指标的计算

1. 召回率(Recall)

  • 召回率衡量的是有多少真正的垃圾邮件被模型识别出来:
    Recall = TP TP + FN = 15 15 + 5 = 0.75 \text{Recall} = \frac{\text{TP}}{\text{TP} + \text{FN}} = \frac{15}{15 + 5} = 0.75 Recall=TP+FNTP=15+515=0.75
  • 解释:真正的垃圾邮件有20封,其中15封被模型识别出来了,5封没有被识别出来(漏报),所以召回率为 0.75。
  • 适用场景:适合于关心漏报(假阴性) 的场景,比如:
    • 医疗诊断,漏诊一个病人可能造成严重后果。
    • 安全系统,漏检一个危险品会有高风险。

2. 精确率(Precision)

  • 精确率衡量的是模型预测为垃圾邮件的邮件中,实际为垃圾邮件的比例:
    Precision = TP TP + FP = 15 15 + 10 = 0.60 \text{Precision} = \frac{\text{TP}}{\text{TP} + \text{FP}} = \frac{15}{15 + 10} = 0.60 Precision=TP+FPTP=15+1015=0.60
  • 解释:模型预测了25封为垃圾邮件,但其中只有15封是真的垃圾邮件,其他10封是误报,所以精确率为 0.60。
  • 适用场景:适合于关心误报(假阳性) 的场景,比如:
    • 垃圾邮件过滤系统,误报一封正常邮件为垃圾邮件可能影响用户体验。
    • 广告点击率预测,误报一条广告点击可能增加广告主的成本。

3. 准确率(Accuracy)

  • 准确率衡量的是模型所有预测中的正确率(包括正确识别的垃圾邮件和非垃圾邮件):
    Accuracy = TP + TN TP + TN + FP + FN = 15 + 70 15 + 70 + 10 + 5 = 0.85 \text{Accuracy} = \frac{\text{TP} + \text{TN}}{\text{TP} + \text{TN} + \text{FP} + \text{FN}} = \frac{15 + 70}{15 + 70 + 10 + 5} = 0.85 Accuracy=TP+TN+FP+FNTP+TN=15+70+10+515+70=0.85
  • 解释:准确率为 0.85,说明模型在 100 封邮件中有 85 封邮件分类正确。
  • 适用场景:适合用于数据集类别分布平衡且每一类都同等重要的情况。
  • 注意:但对于类别不平衡问题,它可能会误导模型的真实表现。比如如果 90% 的邮件是非垃圾邮件,模型可以只预测所有邮件为非垃圾邮件,准确率高达 90%,但这并不意味着模型对垃圾邮件有良好的识别能力。因此,准确率并不是衡量模型的最好指标。

4. F1-score

  • F1-score 是精确率和召回率的调和平均数,兼顾两者的平衡:
    F 1 = 2 × Precision × Recall Precision + Recall = 2 × 0.60 × 0.75 0.60 + 0.75 = 0.6667 F1 = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}} = 2 \times \frac{0.60 \times 0.75}{0.60 + 0.75} = 0.6667 F1=2×Precision+RecallPrecision×Recall=2×0.60+0.750.60×0.75=0.6667
  • 解释:F1-score 为 0.67,表示在平衡精确率和召回率的情况下,模型的综合性能。
  • 适用场景:适合在需要平衡精确率和召回率的情况下使用,例如当我们需要一个较为综合的指标来评估模型时。

http://www.mrgr.cn/news/47327.html

相关文章:

  • springboot整合h2
  • hutool-http实现离线爬虫
  • DNS解析域名简记
  • ELK的搭建
  • kubeneters-循序渐进Cilium网络(二)
  • el-table 自定义表头颜色
  • vc++(vs2010)-windows编程与绘图程序设计
  • 为什么numpy.array的数据像是字典一样,但是这个数据有real属性,又无法读取shape,显示0-d array
  • Linux——echo-tail-重定向符
  • 【部署分布式数据库DBMS】
  • ipguard与Ping32在各行业防数据泄漏方案大对比(企业必看)
  • 仅将 APO 用作采集存储展示 Trace 数据工具
  • 思科WLC使用Smart License
  • 《机器学习与神经网络:跨学科的突破与未来展望》
  • WordPress最佳恶意软件扫描插件:进阶级指南
  • 比较三组迭代次数的变化
  • Unite Shanghai 2024 技术专场 | Unity 6及未来规划:Unity引擎和服务路线图
  • Python即时获取上证指数信息并发送邮件到指定邮箱
  • 【大模型开发】AI提示词框架:解锁ICIO、CRISPE、BROKE和RASCEF的强大潜力
  • 代码随想录打卡Day58
  • 【数据结构】6道经典链表面试题
  • VBA即用型代码手册:将工作表复制到已关闭的工作簿
  • 腾讯云License 相关
  • 数据结构-二叉树_堆
  • jni,java,c
  • 等保测评中的安全事件管理与报告机制