查准率(Precision):所有診斷為患病(1)樣本中實際為患病的比率。

召回率(Recall):所有患病樣本中被發現並診斷為患病的比率。

查准率 = TP/(TP+FP)

召回率 = TP/P = TP/(TP+FN)

敏感性 = TP/P = TP/(TP+FN)

特異性 = TN/N = TN/(TN+FP)

F1-Score = 2*Precision*Recall/(Precision+Recall)

可以利用CV集通過比較不同判斷閾值得到的F1來判斷用哪個閾值更好。

查准率、召回率、敏感性、特異性和F1-score的計算及Matlab實現:

%樣本標記為0和1,num為選取前n個特征的數據用於分類

%需要安裝好SVM

function [sens,spec,F1,pre,rec,acc] = SEERES(train,trainclass,test,testclass,num)

acc = zeros(num,1);

sens = zeros(num,1);

spec = zeros(num,1);

F1 = zeros(num,1);

pre = zeros(num,1);

rec = zeros(num,1);

FeatureNumber = zeros(num,1);

[len,b]=size(testclass);

for n=1:num

label = trainclass;

data = train(:,1:n);

testlabel = testclass;

testdata = test(:,1:n);

model=svmtrain(label,data,'-s 0 -t 0 -b 1');%默認C-SVC類型,0 線性 2 RBF,-b會輸出概率

[predictlabel,accuracy,Scores]=svmpredict(testlabel,testdata,model,'-b 1');

acc(n,1) = accuracy(1,1);

FeatureNumber(n,1) = n;

tp = 0;

fn = 0;

fp = 0;

tn = 0;

for y = 1:len

if predictlabel(y,1)==1 && testclass(y,1)==1

tp=tp+1;

elseif predictlabel(y,1)==1 && testclass(y,1)==0

fp=fp+1;

elseif predictlabel(y,1)==0 && testclass(y,1)==1

fn=fn+1;

elseif predictlabel(y,1)==0 && testclass(y,1)==0

tn=tn+1;

end

end

sens(n,1) = tp/(tp+fn);

spec(n,1) = tn/(tn+fp);

pre(n,1) = tp/(tp+fp);

rec(n,1) = sens(n,1);

F1(n,1) = 2*(pre(n,1)*rec(n,1))/(pre(n,1)+rec(n,1));

end

H(θ) > 0.5       1類;

H(θ) <= 0.5     0類;

通過提升歸為1類的閾值,如H(θ) > 0.7為1類,可以提高查准率,即診斷為患病時這個結果此時更可靠。

通過降低歸為1類的閾值,如H(θ) > 0.3為1類,可以提高召回率,即診斷為健康時這個結果此時更可靠。

matlab 召回率,查准率、召回率、敏感性、特異性和F1-score的計算及Matlab實現相关推荐

  1. 全面梳理:准确率,精确率,召回率,查准率,查全率,假阳性,真阳性,PRC,ROC,AUC,F1

    二分类问题的结果有四种: 逻辑在于,你的预测是positive-1和negative-0,true和false描述你本次预测的对错 true positive-TP:预测为1,预测正确即实际1 fal ...

  2. 机器学习面试题集-图解准确率,精确率,召回率

    https://www.toutiao.com/a6692359723615781389/ 今天进入第二章:模型评估 1. 什么是模型评估 模型训练后要对其进行评估,看模型表现如何,哪里可以改进 分类 ...

  3. 分类指标:准确率、精确率、召回率、F1 score以及ROC、AUC、宏平均、加权平均

    本文将介绍: 混淆矩阵(Confusion Matrix) 准确率(accuracy) 召回率(recall) 精确率(precision) F1score ROC和AUC 宏平均(macro avg ...

  4. F1 Score详解 查准率较高 召回率较低怎末处理?

    [机器学习]F1分数(F1 Score)详解及tensorflow.numpy实现_zjn-ai的博客-CSDN博客_f1分数 西瓜好坏二分类:模型预测出来:A分为好西瓜类(A中有好的有坏的) B分为 ...

  5. 机器学习评价指标(1)——灵敏度(sensitivity)/查准率/召回率(Recall)/和特异度(Specificity)

    1. 敏感性和特异性 理想状态:标准或者阈值在分界点 实际状况:漏诊和误诊二者择一 若选用绿线作为判断标准,则没有误判一个正常人,但是漏掉了部分患者.这种情况下,特异度最高: 特异度(TNR):tru ...

  6. 搞懂敏感性、特异性以及精确率和召回率的关系

    文章目录 1.引言 2.定义 3.例子 1.低精确率,高召回率,高特异性 2.高精确率,高召回率,低特异性 3.高精确率,低召回率,高特异性 4.低精确率,低召回率,高特异性 5.高精确率,低召回率, ...

  7. 【20210914】【机器/深度学习】模型评价指标:精确率、召回率、特异性、敏感性、F1-score、ROC曲线、AUC

    一.区分精确率.召回率和特异性.敏感性 在数据科学中,查看精确率和召回率来评估构建的模型是十分常见的.而在医学领域,通常使用特异性和敏感性来评估医学测试.这一点在兆观的论文.以及 xxx院的沟通过程中 ...

  8. 准确率(Accuracy),精确率/查准率(Precision), 召回率/查全率(Recall)和F1-Measure

    机器学习(ML), 自然语言处理(NLP), 信息检索(IR)等领域, 评估(Evaluation)是一个必要的工作, 而其评价指标往往有如下几点: 准确率(Accuracy), 精确率(Precis ...

  9. 人工智能 之 NLP的Precision(查准率,精确率),Recall(查全率,召回率),Accuracy(准确率)以及综合评价指标(F1-Measure)

    目录 〇.推荐 一.简述 二.罗里吧嗦 三.精确率.召回率.F1 四.AP和mAP(mean Average Precision) 五.ROC和AUC 六.总结 〇.推荐 无意中发现了一个巨牛的人工智 ...

最新文章

  1. 第七章 shell学习之退出、测试、判断及操作
  2. 读书感悟 1 孙子兵法虚实篇(最重要的事情只有一件)
  3. 腾讯商业数据分析师培养计划
  4. flask 定义数据库关系(一对多) --
  5. 前端开发者的福音!通过拖拽就可生成Vue代码的平台来了!
  6. Centos源码安装Python3
  7. c语言求统计硬币正反次数,C语言猜测硬币正反面
  8. 解决永中集成office和opera的中文输入问题
  9. html页面布局实验原理,Html设计实验报告.doc
  10. drupal 8 php filter,Drupal 7 与 Drupal 8 的一些变化
  11. 基于三点说构成的夹角提取特征点
  12. STC12LE5612AD芯片使用心得(五)定时器
  13. 路由器DNS被劫持 解决办法、dns 被劫持怎么解决
  14. 图计算发展简史(1)
  15. html调用头尾html,合并html头尾 - 基础支持 - 用gulp搭建前后分离的开发环�? - KK的小故事...
  16. COLA 4.x和DDD项目实践精粹
  17. dbo.GetJsonValue函数
  18. Cognos 8.3 IE 兼容性问题
  19. R语言基础知识(1)-数据类型及其常用方法
  20. 解决无法通过UEFI安装深度系统deepin 15.10.1的方法

热门文章

  1. 怎么修改服务器密码忘了怎么办啊,华为云怎么修改服务器密码忘记
  2. C#字符串操作,转自韩迎龙博客
  3. 精读《Spring 概念》
  4. 开源团队聊天工具——RocketChat的介绍及部署
  5. 越来越多动物正在灭绝,“AI+动物”能否改变这一局面?
  6. 认识1M带宽、1Mbps、1Mb/s 区分
  7. BeanCounter for Mac(财务记账软件)
  8. Dynamics 365(on-premises)公告栏报错
  9. UE4.26源码版学习广域网独立服务器时遇到的客户端运行黑屏问题
  10. 转载:使用Windows Live Writer发布日志