zoukankan      html  css  js  c++  java
  • AUC画图与计算

    利用sklearn画AUC曲线

    from sklearn.metrics import roc_curve
    labels=[1,1,0,0,1]
    preds=[0.8,0.7,0.3,0.6,0.5]
    fpr, tpr, thresholds = roc_curve(labels, preds)

    print(fpr)
    print(tpr)
    print(thresholds)

    结果:

          [0. 0. 0.5 0.5 1. ]

         [0.33333333 0.66666667 0.66666667 1. 1. ]

       [0.8 0.7 0.6 0.5 0.3]

    计算AUC面积

    auc=0
    init_x=0
    for x,y in zip(fpr,tpr):
        if x!=init_x:
            auc+=(x-init_x)*y
            init_x=x
    print(auc)

    或者直接利用下面语句直接计算即可
    from sklearn.metrics import roc_auc_score
    auc = roc_auc_score(labels, preds)

    画出AUC图

    plt.plot(fpr,tpr)
    plt.title("auc=%.4f"%(auc))
    plt.xlabel("False Positive Rate")
    plt.ylabel("True Positive Rate")
    plt.fill_between(fpr, tpr, where=(tpr>0), color='green', alpha=0.5)
    plt.show()

  • 相关阅读:
    备用
    Python进阶
    *args 和 **kwargs
    C语言
    【Pythno库】-Re
    【C语言】-struct
    Django By Example
    字符串
    Python库
    【Keil】Keil5-改变字的大小和颜色
  • 原文地址:https://www.cnblogs.com/gczr/p/9138698.html
Copyright © 2011-2022 走看看