前言

emmm...第一次写技术贴,工作时候再次学auc,roc....

我引用了这几个帖子,加上其他的是自己深入思考总结的。

  1. 讲解参考:https://zhuanlan.zhihu.com/p/87768945?utm_source=wechat_session&utm_medium=social&utm_oi=786600774271664128
  2. 实战参考:https://www.zhihu.com/question/39840928/answer/146205830?utm_source=wechat_session&utm_medium=social&utm_oi=786600774271664128

抛几个问题,以及超简单回答:

  1. AUC, ROC 干啥的?

    1. 答:用来做模型评估的。
    2. 问:我擦,就是看模型准不准呗,那为啥不用准确率啥的,auc啥的看着就麻烦?
    3. 答:准确率有的场景下没意义,比如拿来100个人,预测一个人是否得疯牛病了,实际上这群人就1个疯牛病,我给个报告就说这些人全正常,那准确率就是99%,你说有意义没?
    4. 问:对哦,我去…这样确实看不出啥,其实得知道这个疯牛病预测的咋样
    5. 答:是啊,所以要搞auc啊,我也很烦,auc其实这玩意相对于准确率的优化点就是把好人和坏人的“准确率”分开算,互不影响。
    6. 问:额,好吧,懂了,那咋算?
    7. 答:就是先搞懂 ROC,不过还得先搞懂混淆矩阵,算了。。你往下看吧。。。
  2. 学这个要提前知道啥?
    1. 混淆矩阵

      1. 问:啥东西?搞的我脑子都混淆了。
      2. 答:就是实际真的,实际假的,预测对的,预测错的,弄成了一个矩阵。着急啥,你接着往下看。
      3. 问 :啥啊,听不懂你说啥,看啥呢?
      4. 答:擦,用这个算FPR,TPR呢哇。
      5. 问:啥FPT啥啊?
      6. 答:滚。。。
    2. FPR,TPR???
      1. 答:就是混淆矩阵再加工一下,算了2个比例。
      2. 问:啥比例?
      3. 答:就FPR,TPR啊!!
      4. 问:那为啥不用其他比例。
      5. 答:大哥,其他也行,比如 FNR 不就是 1-FPR 吗,都是一个理儿。。。
      6. 问:好吧,那你记着讲。。。诶?那这和ROC有啥关系?
      7. 答:你再往下看,这俩东西就是画ROC的!
  3. ROC怎么画啊?
    1. 官方话:设定某一阈值之后,计算出该阈值对应的TPR & FPR,便可以绘制出ROC上对应的一个点,当设定若干个阈值之后,便可以连成ROC曲线,因此当所采样的阈值越多,ROC Curve越平滑。
    2. 问:越是官方好像越是废话,你不觉得吗?
    3. 答:我也觉得,那实操一下吧。。。一会儿看正文。
    4. 问:好吧。。切。。。看看你能到底能不能讲明白.
  4. 画ROC干啥呢?
    1. 答:为了计算AUC啊,auc因为单词就是 area under curve,就是个面积
    2. 问:那为啥这个面积能评估呢?
    3. 答:emmm....这个…往下慢慢读哇,前言说不明白。。。
  5. 有啥优缺点?
    1. 讲完再说!

混淆矩阵

进来看的人,混淆矩阵我猜你懂了,我就用最简单的描述

  • Positive 预测为1,Negative 预测为0
  • True 预测正确,False 预测错误

记住:混淆矩阵是为了FPR,TPR铺垫。

ROC

  • ROC 曲线

    • 纵轴 TPR:真阳率(命中率)真实为 1 的被预测为 1 的

      • TPR = TP / (TP + FN) = TP / P 所有真实类别为 1 的样本中,预测为 1 的比例,越大表示 预测的 1 中 实际 1 越多
    • 横轴 FPR:假阳率(误诊率)真实为 0 的被预测为 1 的:
      • FPR = FP / (FP + TN) = FN / N 所有真实类别为 0 的样本中,预测为 1 的比例,越大表示 预测的 1 中 实际 0 越多
    • 理想:TPR = 1, FPR = 0
    • 记住:FPR,TPR是为了画ROC做铺垫。
  • ROC 绘制
    • 前面说过了:在设定某一阈值之后,计算出该阈值对应的TPR & FPR,便可以绘制出ROC上对应的一个点,当设定若干个阈值之后,便可以连成ROC曲线,因此当所采样的阈值越多,ROC Curve越平滑。
    • 这段废话前面说过了,还是看看实例吧,看完就懂了
import 

  1. 这个图非常清晰了,数据有预测的概率,真实的 label
  2. 从高到低排个序,然后遍历,阈值从高到低划分
  3. 对应不就能算tpr fpr了么
  4. 算出来之后,这些TPR,FPR的点不就可以画ROC了吗。

这个图就是用FPR,TPR描出来的

  • ROC解读

    • 面积(AUC)

      • 从所有正例中随机选取一个样本A,再从所有负例中随机选取一个样本B,分类器将A判为正例的概率比将B判为正例的概率大的可能性。
      • 可以看到位于随机线上方的点被认为好于随机猜测,在这样的点上TPR总大于FPR,意为正例被判为正例的概率 > 负例被判为正例的概率。
    • 为啥比准确率更有意义?
      • ROC 的TPR,FPR:能顾兼顾正例和负例的权衡:测试集中的正负样本的分布变换的时候,ROC曲线能够保持不变。
      • TPR聚焦于正例(分母为全部正例),FPR聚焦于与负例(分母为全部负例),因此正负例数量改变时,不会影响另一列。
      • 看下面这个图: (a)和(c)为Roc曲线,(b)和(d)为Precision-Recall曲线,ab样本均衡,cd不均衡。样本不均衡时,ROC曲线基本保持原貌,而P-R曲线变化较大。

先不写了哈哈,有点事,回头再更。

PR曲线

优缺点

AUC其他计算方法

gAUC

sqlmap中的columns哪里看_ROC,AUC 还是看我的吧,别人都千篇一律相关推荐

  1. 在SQLMAP中使用动态SQL

    最近有几个同事和朋友询问如何在SQLMAP中"拼接字符串",因为有时候条件的数量不固定,条件参数类型也不固定,无法写出 @参数名 这样的SQL语句,也就是大家常说的"动态 ...

  2. 医院计算机管理在品管圈中的应用,品管圈在医院管理中怎么用?看完就明白了...

    原标题:品管圈在医院管理中怎么用?看完就明白了 品管圈(Quality Circle,QCC),又称"质量小组",是一种企业对基层员工的自主管理.全员品管及持续改善最佳的管理活动, ...

  3. MSDN宝藏库中,初学者应该看的东西【整理的很辛苦哦】

    MSDN宝藏库中,初学者应该看的东西[整理的很辛苦哦] 2012-06-14 14:25 by 随风浪迹天涯, 3710 visits, 收藏, 编辑 前言 诶,好吧,我首先接受大家的砖头,说我无聊也 ...

  4. 零元学Expression Blend 4 - Chapter 7 什麽?影片不再是印象中的方框框!!!看Blend 4如何把影片镶入字里...

    零元学Expression Blend 4 - Chapter 7 什麽?影片不再是印象中的方框框!!!看Blend 4如何把影片镶入字里 原文:零元学Expression Blend 4 - Cha ...

  5. Linux中Mysql root用户看不到mysql库问题解决方式

    Linux中Mysql root用户看不到mysql库问题解决方式 参考文章: (1)Linux中Mysql root用户看不到mysql库问题解决方式 (2)https://www.cnblogs. ...

  6. origin画图_Origin作图过程中如何让图看起来更生动

    来源丨萤火科研← 关注TA 有朋友咨询在用Origin作图过程中如何让图看起来更生动,在使用过程中,有一些小技巧可供大家参考参考(本人用2017,以2017版为例).1.例如在画XRD过程中,如果我的 ...

  7. SQLMap中tamper的简介

    目录结构 一.SQLMap中tamper的简介 1.tamper的作用 2.tamper用法 二.适配不同数据库类型的测试tamper 三.SQLMap中tamper篡改脚本的功能解释 一.SQLMa ...

  8. sqlmap中的tamper 脚本分析

    space2randomblank 作用:空格替换为备选字符集中的随机字符 例子: ('select id from users') ( select %0Did%0DFRM%0A users') 详 ...

  9. 正大国际期货:国际期货中的八条看盘技巧!

    国际期货投资成为金融交易市场越来越受重视的投资品种,炒期货也并不再是什么新鲜词汇,跟炒股一样逐渐走进大众的视界,再加上期货是T+0多空双向交易,对比炒股T+1且只能做多不能空的交易机制而言,期货投资是 ...

最新文章

  1. Secure-CRT使用技巧
  2. 理工科学生如何建立对于财务三大表的基本分析呢?
  3. 2021年阿里云采购季大促主会场全攻略
  4. 关于PHP各种循环,关于php迭代循环(无限分类)
  5. 数字后端基本概念介绍——Row
  6. jQuery 写的简单打字游戏
  7. 行为型模型 中介者模式
  8. 什么是探索性测试?探索性测试有哪些方法?
  9. 质量管理8D报告详解,附报告模板
  10. 关于使用火车采集器采集分页URL不变化网站
  11. 7039s芯片(F4plus、M3 4K、M6 4K、F5PLUS、A1-4K)开机不进主界面的解决办法
  12. python 利用python处理excel文件
  13. 最小费用最大流之 zkw费用流与普通费用流
  14. 编写函数求阶乘(完整版)
  15. 基于图灵api实现微信聊天机器人
  16. 亚马逊差评怎么删?常用的几种删差评方法介绍
  17. 10分钟学计算机,电脑运行越来越慢?程序员大牛10分钟教你学会电脑瘦身
  18. 计算机专业要考什么证书?
  19. 使用电脑实现图片文字识别的方法
  20. 关于恢复RAID数据的数据恢复软件推荐

热门文章

  1. Spring Data JPA-动态查询
  2. 使用DB2 pureXML管理蛋白质数据库
  3. Power Query-具体查看函数的方法
  4. STM32F103C8T6硬件SPI控制6针/7针0.96寸OLED显示屏
  5. Django REST framework+Vue 打造生鲜超市(四)
  6. 深入计算机组成原理(十五)浮点数和定点数(上):怎么用有限的bit标识尽可能多的信息?
  7. 如何在自己的网站加入qq在线交谈功能
  8. c语言d1和f1的区别,讲点真话:当贝d1和f1区别有没有?测评哪个好?谁来分享使用心得...
  9. MEM/MBA数学基础(03)整式与分式 运算
  10. 浅谈售后服务的备件管理