Classification week6: precision & recall 笔记
华盛顿大学 machine learning :classification 笔记
第6周 precision & recall
1.accuracy 局限性
我们习惯用 accuracy 评价一个分类器模型的准确程度,accuracy即正确预测的样本数/预测样本总数, 一般情况下这种评价都适用。
但假设一个这样的二分类器,95%的数据都是 +1 ,分类器直接把所有数据预测为 +1,那这个分类器的accuracy 为95%, 很高,但显然这不是个好的分类器。对于这样的数 据,评价一个分类器模型准确程度还需别的评价标准。
2.True Positive & False Positive & False Negative & True Negative
对于一个二分类器,预测结果可能有以下几种情况:
True Positive: 实际为 +1,预测也为 +1。
False Positive: 实际为 -1,预测为 +1。
False Negative: 实际为 +1,预测为 -1。
True Negative: 实际为 -1,预测也为 -1。
3. Accuracy & precision & recall
Accuracy 表示为:
考虑另外两个评价参数 precision 和 recall。
4.Optimistic model & pessimistic model
Optimistic model:
一个预测模型过于乐观, 即几乎对于所有样本都预测为 +1, 这种情况往往发生在数据集多数为 +1 ,且模型过拟合的情况下。
这种模型的预测结果中, False Negative很少(实际+1 被预测为 -1),False Positive较多(实际-1 被预测为 +1)。即precision 较低, recall较高,Precision 和recall 中主要应注意 precision。
对于这种模型,需要注意减少false positive 的数量, 即:
计算Cost时false positive 与 false negative权重不同,false positive 的权重应更高;
提高预测为 +1 的confidence level,即提高判断为+1的阈值(+1 if probability >= threshold else -1),模型需要在更有把握的时候才能预测为 +1。
pessimistic model:
一个预测模型过于悲观, 即只有在非常肯定的情况下才会预测为 +1,
这种模型的预测结果中, False Negative很多(实际+1 被预测为 -1),False Positive较少(实际-1 被预测为 +1)。即 precision较高, recall较低,应主要注意 recall。
对于这种模型,需要注意减少false negative 的数量, 即
计算Cost时提高false negative 的权重。
降低预测为 +1 的confidence level。
5. 用Precision & recall评价模型好坏
显然,最理想的模型 precision、recall 都为1,然而实际情况中面临着 precision & recall 之间的权衡问题,precision 和recall 往往是此消彼长,例如有两个分类器模型A 和B,如下图所示,考虑到precision 和 recall, 哪个模型更好?
一个评价方法是:比较曲线下的面积大小(area-under-the-curve, AUC)。以这种方法进行比较,显然B分类器更好。
Classification week6: precision & recall 笔记的更多相关文章
- 评价指标整理:Precision, Recall, F-score, TPR, FPR, TNR, FNR, AUC, Accuracy
针对二分类的结果,对模型进行评估,通常有以下几种方法: Precision.Recall.F-score(F1-measure)TPR.FPR.TNR.FNR.AUCAccuracy 真实结果 1 ...
- 查准与召回(Precision & Recall)
Precision & Recall 先看下面这张图来理解了,后面再具体分析.下面用P代表Precision,R代表Recall 通俗的讲,Precision 就是检索出来的条目中(比如网页) ...
- TP Rate ,FP Rate, Precision, Recall, F-Measure, ROC Area,
TP Rate ,FP Rate, Precision, Recall, F-Measure, ROC Area, https://www.zhihu.com/question/30643044 T/ ...
- 机器学习:评价分类结果(Precision - Recall 的平衡、P - R 曲线)
一.Precision - Recall 的平衡 1)基础理论 调整阈值的大小,可以调节精准率和召回率的比重: 阈值:threshold,分类边界值,score > threshold 时分类为 ...
- Precision,Recall,F1的计算
Precision又叫查准率,Recall又叫查全率.这两个指标共同衡量才能评价模型输出结果. TP: 预测为1(Positive),实际也为1(Truth-预测对了) TN: 预测为0(Negati ...
- 目标检测的评价标准mAP, Precision, Recall, Accuracy
目录 metrics 评价方法 TP , FP , TN , FN 概念 计算流程 Accuracy , Precision ,Recall Average Precision PR曲线 AP计算 A ...
- Handling skewed data---trading off precision& recall
preision与recall之间的权衡 依然是cancer prediction的例子,预测为cancer时,y=1;一般来说做为logistic regression我们是当hθ(x)>=0 ...
- 通过Precision/Recall判断分类结果偏差极大时算法的性能
当我们对某些问题进行分类时,真实结果的分布会有明显偏差. 例如对是否患癌症进行分类,testing set 中可能只有0.5%的人患了癌症. 此时如果直接数误分类数的话,那么一个每次都预测人没有癌症的 ...
- 机器学习基础梳理—(accuracy,precision,recall浅谈)
一.TP TN FP FN TP:标签为正例,预测为正例(P),即预测正确(T) TN:标签为负例,预测为负例(N),即预测正确(T) FP:标签为负例,预测为正例(P),即预测错误(F) FN:标签 ...
随机推荐
- javascript快速入门27--XSLT基础
XSL 与 XSLT XSL 指扩展样式表语言(EXtensible Stylesheet Language).它主要被用来对XML文档进行格式化,与CSS不同,XSL不仅仅是样式表语言XSL主要包括 ...
- javascript快速入门3--分支判断与循环
分支结构 单一选择结构(if) 二路选择结构(if/else) 内联三元运算符 ?: 多路选择结构(switch) var condition = true; if (condition) { ale ...
- MyEclipse中快捷键
------------------------------------- MyEclipse 快捷键1(CTRL) ------------------------------------- Ctr ...
- 【招聘App】—— React/Nodejs/MongoDB全栈项目:登录注册
前言:最近在学习Redux+react+Router+Nodejs全栈开发高级课程,这里对实践过程作个记录,方便自己和大家翻阅.最终成果github地址:https://github.com/66We ...
- NDK官方开发指南翻译之 NDK_GDB
这几天看JNI,没有基础,那真是难受--把看到的相关资料记录一下,也分享给刚開始学习的人. 'ndk-gdb' Overview 重要:假设你要调试线程相关的程序.请阅读以下的'Thread Supp ...
- 谋哥:玩App怎么赚钱(三)
谋哥每天坚持写文章,如今写作速度是越来越快了,当然这样也能节省点时间.只是坚持每天写,确实须要极大的耐力和毅力,由于偶然事件会影响你心情和灵感.只是我一直相信秦刚老师(微信/QQ1111884 )说的 ...
- Linux——获取IP及其中发现的问题
由于最近在学习网络编程,喜欢玩IP地址. 首先,我需要搞清楚如何获得本机IP. ===========================================11.04============ ...
- object hook实现禁止创建文件
object hook实现禁止创建文件 原理不说了,大伙都懂得.. 要解决的问题: ,FILE_NON_DIRECTORY_FILE); if (!NT_SUCCESS(status)) { dpri ...
- nnlog-yaml
from nnlog import Logger# log=Logger(file_name='my.log',level='debug',# when='S',backCount=5,interva ...
- <转>多线程中的lua同步问题
转自 http://www.cnblogs.com/ghost240/p/3526185.html 最近写paintsnow::start时出现了一个非常麻烦的BUG,程序的Release版本大约每运 ...