可视化: Python—MatPlotLib—多模型的ROC曲线

文章目录

示例

在这里插入图片描述

代码

from sklearn.metrics import roc_curve, auc
import matplotlib as mpl  
import matplotlib.pyplot as plt

plt.figure(figsize=(15, 10))
def plot_roc(labels, predict_probs, titles):
    color = ['r', 'g', 'b', 'y']                                                                 
    shape = ['o', 'v', '^']   
    
    for idx, predict_prob in enumerate(predict_probs):
        false_positive_rate,true_positive_rate,thresholds=roc_curve(labels, predict_prob)
        roc_auc=auc(false_positive_rate, true_positive_rate)
        plt.title('ROC')
        c = color[idx%len(color)]                                                                     
        s = shape[idx%len(shape)]
        plt.plot(false_positive_rate, true_positive_rate,'b',label='AUC K:{} = {:.4}'.format(titles[idx], roc_auc), color=c, marker=s, markevery=20)  
        plt.legend(loc='lower right')
        plt.plot([0,1],[0,1],'r--')
        plt.ylabel('TPR')
        plt.xlabel('FPR')
plot_roc(pca_test_label, predict_probs)

解释

该代码参数含义为:

  • label: 长度为N的列表,二分类的真实标签
  • predict_probs:二级列表,每个元素为长度为N的列表,记录的是正类的概率。
  • titles:图例中的K:xxx的名称列表
  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值