【机器学习】二分类问题中的混淆矩阵、准确率、召回率等 (Python代码实现)
文章目录
- 混淆矩阵
- 召回率与准确率
- 准确度Accuracy
- sklearn代码示例
混淆矩阵
混淆矩阵(Confusion Matrix):将分类问题按照真实情况与判别情况两个维度进行归类的一个矩阵,如在二分类问题中就是一个2*2的矩阵:
- TP(True Positive):表示实际为真预测为真
- FP(False Positive):表示实际为假预测为真 (漏报)
- TN(True Negative):表示实际为真预测为真
- FN(False Negative):表示实际为假预测为假 (误报)
召回率与准确率
召回率 = TP/(TP+FN)
准确率 = TP/(TP+FP)
一个池塘有10条鱼和20只小龙虾,渔夫打鱼,捞上8条鱼和12只龙虾,那么召回率为8/10=80%,准确率为8/(8+12)=40% —《Web安全之强化学习与GAN》
准确度Accuracy
准确度Acc是对检测结果的均衡评价,是全体预测正确按整个样本的比例:
准确度=TP+TNTP+TN+FP+FN准确度 = \frac{TP+TN}{TP+TN+FP+FN} 准确度=TP+TN+FP+FNTP+TN
sklearn代码示例
pip install scikit-learn==0.24.2
from sklearn import metrics # sklearn==0.24.2
import numpy as nptest_Y = np.array([0,0,1,0,0,1,0,1,1,0]) # 测试集的标签
predict_Y = np.array([1,0,1,0,0,0,0,1,0,0]) # 预测值confusion_matrix = metrics.confusion_matrix(test_Y,predict_Y) # 混淆矩阵(注意与上面示例的混淆矩阵的图位置并不一一对应)
tn, fp, fn, tp = metrics.confusion_matrix(test_Y,predict_Y).ravel() # 混淆矩阵各值
recall_score = metrics.recall_score(test_Y,predict_Y) # 召回率
pre_score = metrics.precision_score(test_Y,predict_Y) # 准确率
ACC = metrics.accuracy_score(test_Y,predict_Y) # 准确度ACCprint(confusion_matrix)
print(tn, fp, fn, tp)
print(recall_score)
print(pre_score)
print(ACC)
[[5 1][2 2]]
5 1 2 2
0.5
0.6666666666666666
0.7
【机器学习】二分类问题中的混淆矩阵、准确率、召回率等 (Python代码实现)相关推荐
- Python机器学习:评价分类结果008多分类问题中的混淆矩阵
多分类问题中的混淆矩阵 #十分类问题 import matplotlib.pyplot as plt import numpy as np 数据 from sklearn import dataset ...
- Python机器学习:评价分类结果003实现混淆矩阵,精准率和召回率
#实现混淆矩阵,精准率和召回率 import numpy as np from sklearn import datasets digits = datasets.load_digits() X = ...
- 分类算法的评价指标-混淆矩阵,精准率召回率,pr曲线,roc曲线等
文章目录 前言 一.混淆矩阵(confusion matrix)? 二.精准率和召回率 1.精准率 2.召回率 3.自己实现精准率和召回率以及混淆矩阵 4.sklearn中的精准率召回率以及混淆矩阵 ...
- 混淆矩阵、召回率、精确率、正确率、F1、真阳性率、假阳性率、ROC、AUC
ConfusionMatrix:Confusion Matrix:ConfusionMatrix: 真实 1 0 预测 1 TP(命中) FP(虚报) 0 FN(漏报) TN(正确拒绝) 召回率Rec ...
- 混淆矩阵 正确率 召回率 ROC曲线
混淆矩阵: 预测结果 真实结果 +1 -1 +1 TP FN -1 FP TN TP:真阳 TN:真阴 FP:假阳 FN:假阴 正确率/精准率(precision):TP/(TP+ ...
- [机器学习] 二分类模型评估指标---精确率Precision、召回率Recall、ROC|AUC
一 为什么要评估模型? 一句话,想找到最有效的模型.模型的应用是循环迭代的过程,只有通过持续调整和调优才能适应在线数据和业务目标. 选定模型时一开始都是假设数据的分布是一定的,然而数据的分布会随着时间 ...
- 机器学习——二分类、多分类的精确率和召回率
机器学习有很多评估的指标.有了这些指标我们就横向的比较哪些模型的表现更好.我们先从整体上来看看主流的评估指标都有哪些: 分类问题评估指标: 准确率 – Accuracy 精确率(差准率)- Preci ...
- 决策树分类评估指标之混淆矩阵
问题的提出 如果决策树的目标是尽量捕获少数类,则准确率模型评估的意义不大,需要新的模型评估指标.简单来看,只需要查看模型在少数类上的准确率就好,只要能够将少数类尽量捕捉出来,就能够达到目的. 但是,新 ...
- 【机器学习】--模型评估指标之混淆矩阵,ROC曲线和AUC面积
一.前述 怎么样对训练出来的模型进行评估是有一定指标的,本文就相关指标做一个总结. 二.具体 1.混淆矩阵 混淆矩阵如图: 第一个参数true,false是指预测的正确性. 第二个参数true,p ...
最新文章
- KWrite 和 Kate 在 Linux 上的应用
- iOS 11 UIScrollView的新特性(automaticallyAdjustsScrollViewInsets 不起作用了)
- vue-cli ——解决多次复用含有Echarts图表组件的问题
- 题目1160:放苹果
- Linux(centos6.5)下安装jenkins
- 深入Python(4):深拷贝和浅拷贝
- java 人脸检测_Java+OpenCV实现人脸检测并自动拍照
- matlab eval函数_matlab自动给变量命名
- 用Lucene建立搜索索引
- 【精华】详解Qt中的内存管理机制
- 云计算时代下的数据中心运维之路
- 使用 ADB LogCat 查看在Android真机上 Unity debug.log 输出日志
- java.util 1.8_JDK1.8源码(四)——java.util.Arrays 类
- Creating and Destroying Objects
- 清华寒门女孩毕业演讲刷爆网络:世界本不公平,努力是你唯一的路!
- 2022年华为杯中国研究生数学建模竞赛F题思路
- abaqus模拟单向压缩实验
- 三相锁相环仿真及其代码验证,附C语言源码
- 世界语言缩写,各国语言简称,各国域名缩写
- 大一新生HTML期末作业,网页制作作业(大一学生作品)
热门文章
- 【记录】vscode常用插件
- 计算机网络——ICMP/IGMP协议原理
- 适合IT人的茶:雪域珍品——高原黑珍珠
- 小马哥---高仿苹果7p 主板型号A335 6735芯片系列刷机拆机图与开机识别图
- 财务报表分析——理论、方法与案例(微课版) PDF
- 有关计算机的英语口号,英语口号集锦(精选60条)
- SLAM技术目前主要应用在哪些领域
- Word处理控件Aspose.Words功能演示:使用 C# 将 DOCX 转换为 HTML
- java如何让鼠标移动_java-如何学习鼠标移动?
- linux ps和 pstree,Linux ps和pstree命令知识点总结