华盛顿大学 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 笔记的更多相关文章

  1. 评价指标整理:Precision, Recall, F-score, TPR, FPR, TNR, FNR, AUC, Accuracy

    针对二分类的结果,对模型进行评估,通常有以下几种方法: Precision.Recall.F-score(F1-measure)TPR.FPR.TNR.FNR.AUCAccuracy   真实结果 1 ...

  2. 查准与召回(Precision & Recall)

    Precision & Recall 先看下面这张图来理解了,后面再具体分析.下面用P代表Precision,R代表Recall 通俗的讲,Precision 就是检索出来的条目中(比如网页) ...

  3. 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/ ...

  4. 机器学习:评价分类结果(Precision - Recall 的平衡、P - R 曲线)

    一.Precision - Recall 的平衡 1)基础理论 调整阈值的大小,可以调节精准率和召回率的比重: 阈值:threshold,分类边界值,score > threshold 时分类为 ...

  5. Precision,Recall,F1的计算

    Precision又叫查准率,Recall又叫查全率.这两个指标共同衡量才能评价模型输出结果. TP: 预测为1(Positive),实际也为1(Truth-预测对了) TN: 预测为0(Negati ...

  6. 目标检测的评价标准mAP, Precision, Recall, Accuracy

    目录 metrics 评价方法 TP , FP , TN , FN 概念 计算流程 Accuracy , Precision ,Recall Average Precision PR曲线 AP计算 A ...

  7. Handling skewed data---trading off precision& recall

    preision与recall之间的权衡 依然是cancer prediction的例子,预测为cancer时,y=1;一般来说做为logistic regression我们是当hθ(x)>=0 ...

  8. 通过Precision/Recall判断分类结果偏差极大时算法的性能

    当我们对某些问题进行分类时,真实结果的分布会有明显偏差. 例如对是否患癌症进行分类,testing set 中可能只有0.5%的人患了癌症. 此时如果直接数误分类数的话,那么一个每次都预测人没有癌症的 ...

  9. 机器学习基础梳理—(accuracy,precision,recall浅谈)

    一.TP TN FP FN TP:标签为正例,预测为正例(P),即预测正确(T) TN:标签为负例,预测为负例(N),即预测正确(T) FP:标签为负例,预测为正例(P),即预测错误(F) FN:标签 ...

随机推荐

  1. 使用JavaScript和Canvas实现下雪动画效果

    该下雪动画效果使用了HTML5中Canvas画布实现,其中涉及了物理学中曲线运动的相关知识与运算. index.html <!DOCTYPE html> <html lang=&qu ...

  2. Java ArrayList的模拟实现

    package test; import java.util.Arrays; import java.util.Collection; public class MyArrayList<E> ...

  3. MPTCP 源码分析(二) 建立子路径

    简述      MPTCP在进行三次握手之后,客户端和服务端会进行地址信息的交换,让对方知道彼此未用的地址信息. 当客户端知道服务端的地址后就可以建立其他子路径.三次握手和建立子路径的过程如图1:   ...

  4. npm install --no-bin-links中的参数“no-bin-links”表示什么意思

    npm install --no-bin-links中的参数"no-bin-links"表示什么意思

  5. 使用CXF实现基于Soap协议的WebService

    本文介绍使用CXF实现基于Soap协议的WebService(CXF的版本是3.0.0) 一. 前言 Java有三种WebService规范:Jax-WS,Jax-RS,Jaxm 1. Jax-WS( ...

  6. Spring使用经验之Listener综述

    Note:Spring使用版本是4.1.6.RELEASE 1. ContextLoaderListener最基本的SpringListener,加载Spring配置文件 配置名为contextCon ...

  7. lucene 查询

    csdn blog - Lucene 3.0 的Query Parser(查询语法)   ibm developerWorks - 使用 Apache Lucene 2.4.1 搜索文本   osch ...

  8. linux 设置tomcat快捷启动方式

    在linux下搭建好tomcat之后,每次启动和关闭都要去tomcat的bin目录下执行./startup.sh和./shutdown.sh 这是很不方便的,下面介绍如何像执行ls mv cp等命令一 ...

  9. NSTimer 增加引用计数, 导致内存泄露,

    self.adTimer   = [NSTimerscheduledTimerWithTimeInterval:5.0target:selfselector:@selector(handleADIma ...

  10. 利用python拼接图片

    问题描述: 将16张图片拼接成4x4的图片, 且不改变每单张图片的像素值. 代码如下: import os from PIL import Image path = '/share1/home/con ...