zoukankan      html  css  js  c++  java
  • 分类器评估方法:ROC曲线

    注:本文是人工智能研究网的学习笔记

    ROC是什么

    二元分类器(binary classifier)的分类结果

    ROC空间

    最好的预测模型在左上角,代表100%的灵敏度和0%的虚警率,被称为完美分类器。

    一个随机猜测模型。会给出从左下角到右上角的沿着对角线的点(对角线被称作line of no-discrimation)。

    对角线上的的点代表了好的分配结果,对角线以下的点代表不好的分配结果,但是可以通过翻转变成好的分类器。

    绘制ROC曲线

    AUC--ROC曲线下的面积

    当曲线差不多时,求面积, 新的研究表名,AUC曲线存在一些问题。

    roc_curve模块

    metrics.roc_curve(y_true, y_score, pos_label=None, sample_weight=None, drop_intermediate=True)
    

    参数:

    • y_true: 真正的二元类标签,如果不是二元分类,需要使用pos_label显式的指明。
    • y_score: 预测得分
    • pos_label: 多分类的时候,指定将哪一个看成正样本,默认是None。
    • drop_intermediate: 指定是否丢弃一些次优的阈值,将不会再roc曲线上显示。曲线较多的时候,可以使用。

    返回值:

    • fpr:array,shape=[>2]不断增长的虚警率(假正率)
    • tpr:array,shape=[>2]不断增长的真正率
    • thresholds:array,shape=[n_thresholds]阈值
    from sklearn.metrics import roc_curve,roc_auc_score
    y = np.array([1,1,2,2])
    scores = np.array([0.1, 0.4, 0.35, 0.8])
    fpr, tpr, thresholds = roc_curve(y, scores, pos_label=2)
    print(fpr)
    print(tpr)
    print(thresholds)
    

  • 相关阅读:
    Tomcat安装和使用
    mysql5.7.18安装配置
    Memcached安装与使用
    Redis
    nginx的安装与使用
    python操作mysql
    Paramiko模块
    协程与异步IO
    Queue与生产者消费者模型
    C# 生成验证码 方法二
  • 原文地址:https://www.cnblogs.com/cnkai/p/7755147.html
Copyright © 2011-2022 走看看