roc_curve()绘制测试集(test set)的ROC曲线

本文通过加载真实标签和预测分数,利用Python的matplotlib和sklearn库来绘制ROC曲线,并计算并显示了AUC值。该过程展示了如何从文件中读取数据,使用sklearn的metrics模块计算真阳性率和假阳性率,最后使用matplotlib绘制ROC曲线。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import matplotlib.pyplot as plt
from sklearn  import metrics  
from sklearn.metrics import auc    


###################################################################
f = open('D:/CaffeInfo/D_TrainVal/' + 'y_true.txt')             
y_true = []
for i in range(383): #383 = the number of images in test set
    line = f.readline()              
    y_true = y_true+ [float(line)]

f.close()
print 'y_true:', y_true
print 'length of y_true:', y_true.__len__()

###################################################################
f = open('D:/CaffeInfo/D_TrainVal/' + 'y_scores.txt')             
y_scores = []    
for i in range(383):
    line = f.readline()
    y_scores = y_scores+ [float(line)]

f.close()
print 'y_scores:', y_scores
print 'length of y_true:', y_scores.__len__()

print('finish loading y_true  y_scores')  

###################################################################
fpr, tpr, thresholds = metrics.roc_curve(y_true, y_scores, pos_label=1)   
AUC = auc(fpr, tpr)

print('fpr:')    
print fpr     
print( fpr.__len__() )

print('tpr:')
print tpr     
print( tpr.__len__() )

###################################################################
plt.plot(fpr, tpr)  
plt.title('ROC_curve' + '(AUC: ' + str(AUC) + ')' )  
plt.ylabel('True Positive Rate')  
plt.xlabel('False Positive Rate')  
plt.show()


运行结果:

y_true: [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
length of y_true: 383
y_scores: [1.0, 0.9989703893661499, 0.9833925366401672, 4.409377973000234e-16, 3.654451575130224e-05, 1.0846795317071379e-28, 1.0, 0.9999997615814209, 2.3714043934588725e-17, 3.5566818934462674e-10, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.9999979734420776, 2.159470476718081e-15, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 5.763416538684396e-06, 1.0, 0.9999997615814209, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.9964908957481384, 1.0, 1.0, 0.9999910593032837, 1.0, 1.0, 1.0, 1.0, 1.0, 1.982920959093491e-21, 1.0, 1.0, 0.19029600918293, 1.0, 0.9999446868896484, 0.9999953508377075, 0.9999587535858154, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.9921748042106628, 1.0, 1.0, 0.7570706605911255, 2.3750871491756698e-07, 0.009620176628232002, 1.0, 1.0, 1.0, 1.0, 1.0, 8.756744461491106e-12, 1.0, 0.9869406819343567, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.39144906401634216, 1.0, 1.0, 3.8656381207147206e-08, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.49888136982917786, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.16706448793411255, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.0006361943087540567, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.9998772144317627, 1.0, 1.0, 1.0, 1.0, 0.9999600648880005, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.9999979734420776, 1.0, 1.0, 1.0, 1.0, 0.9999953508377075, 1.0, 2.865639515503386e-15, 0.5370990633964539, 1.6310989475173737e-15, 1.0498197529827227e-22, 2.8932987049741184e-22, 0.2671799063682556, 1.2560042962259024e-23, 1.8447791037823347e-12, 1.7918045217121007e-19, 4.013021412303446e-17, 5.907387345136308e-14, 5.161783889207072e-09, 6.561354893258841e-26, 2.9902942253731803e-29, 2.3975011327670414e-24, 1.0, 0.9704707860946655, 5.950607776813182e-22, 3.2095428743815433e-18, 1.8033344516134225e-23, 1.5638856655428833e-16, 1.4048352734982252e-30, 1.0, 1.1445723985290386e-18, 1.0701524337666544e-25, 3.5806441137801787e-16, 1.1393718000324293e-13, 0.9998106360435486, 9.449133271213736e-28, 8.192370528703821e-14, 1.3627346788780414e-06, 1.0, 8.364718162947208e-24, 5.800345708372789e-26, 1.0, 1.3046366539819754e-26, 0.9993494153022766, 7.017752958424303e-25, 0.9999868869781494, 1.0, 0.0006124710780568421, 8.890033639461645e-40, 6.7183336227572e-08, 0.9999998807907104, 0.9997757077217102, 0.9999945163726807, 0.1868879199028015, 1.1189202869628504e-18, 1.4679200717176937e-22, 1.0, 1.0, 0.9999942779541016, 1.0, 2.581074026383745e-12, 2.26655761807134e-26, 8.426463092042581e-17, 0.9999990463256836, 0.005760740488767624, 1.798672414930021e-20, 2.2077189175263544e-26, 1.369468363681531e-15, 0.2874392569065094, 3.4219914368804893e-07, 0.1279108077287674, 5.462792853766827e-22, 5.304563615027291e-07, 5.32647788986651e-07, 4.344102321244235e-14, 6.788913742639124e-05, 3.7738673297482705e-11, 1.2271822962257273e-20, 0.2703438699245453, 6.840610149083659e-05, 8.690053020722784e-28, 9.051552729067591e-26, 2.0535168005153537e-05, 0.16405464708805084, 2.3125628556752456e-41, 2.8418095643637257e-23, 1.0621147699197193e-20, 1.8242775253556826e-24, 9.075649336298213e-34, 4.2652100113501484e-14, 1.9473264159347717e-24, 0.4239818751811981, 4.781054526802435e-26, 2.0763654879012895e-27, 2.063813378388538e-16, 1.767882952389329e-14, 1.3084887449823432e-27, 5.669016366738724e-23, 1.588661927703905e-12, 1.602100719860881e-33, 8.81030072323496e-24, 1.44717495473099e-23, 4.538779396109123e-28, 1.492451538982886e-17, 2.652590835568385e-29, 3.920729910990595e-26, 5.906292193134299e-26, 5.010066244179216e-32, 6.416654260673667e-25, 1.3890931773179203e-23, 1.18127470888303e-25, 1.761232919858228e-21, 0.21688303351402283, 2.7191998425113345e-26, 1.8753719643882505e-07, 5.501757903425553e-13, 8.167715093675143e-15, 2.3607570094324145e-22, 3.2240644717493588e-15, 3.0786988932891685e-24, 3.001526129767117e-23, 1.6892873051971063e-16, 7.515426999490048e-27, 8.93687923943048e-28, 8.48175882537158e-35, 1.0119428932302362e-21, 3.932237320837893e-24, 1.8705852838918346e-11, 2.427625151162272e-22, 1.0399430379012836e-29, 1.1054635242137705e-24, 8.537848897836211e-21, 6.028546393403412e-28, 1.5814031009854903e-16, 2.5547072863283784e-17, 1.4191507127434e-13, 6.262590416137296e-24, 6.899819870258617e-23, 7.603691375418916e-21, 2.159016572937471e-16, 1.1490748118903958e-24, 5.973523480079342e-25, 4.792440747990874e-43, 1.822538678705349e-24, 6.850111880936753e-26, 4.0053194913760157e-29, 5.598299578387218e-20, 9.225709027260289e-27, 2.6769024519761614e-24, 4.071870781326242e-22, 7.12453486537337e-27, 1.719768215937971e-17, 9.96742911471437e-25, 6.283139059426945e-26, 3.0343106207436757e-32, 8.82234313053209e-16, 2.2147195190255013e-34, 7.750919549154305e-34, 1.558207445116659e-35, 4.744365616732344e-29, 1.3184066046661632e-31, 4.3991011900250714e-21, 2.7702333745337645e-24, 1.1865343831166228e-28, 7.808748055826909e-22, 2.2252342400123e-22, 1.3873347502286272e-16, 1.0243093847517782e-20, 3.291592919721651e-38, 1.2550767853899062e-28, 1.535320079878158e-20, 6.94537169640974e-31, 6.898875158422287e-30, 7.025735244709008e-25, 4.811710956056761e-37, 4.665911355814961e-30, 6.158928347128421e-20, 6.746101455235021e-10, 9.380172610543606e-22, 1.3726629401561581e-24, 1.2344022238606388e-22, 7.700488067102262e-28, 2.7067415939905223e-17, 1.4891675515990985e-28, 1.7702860759527539e-06, 1.287288782230009e-27, 1.9140910423704998e-29, 1.6045712768339238e-26, 3.4292184143385816e-26, 7.224979045320964e-27, 5.669788858780162e-25, 5.986426938963876e-20, 1.130976500734412e-22, 3.661285164196181e-21, 1.0, 5.532805873177712e-19, 2.2199645964103506e-26, 8.879181584873237e-20, 0.9977333545684814, 1.1069724356287875e-27, 2.5608581904641135e-29, 1.1566567512657012e-24, 1.6448691576563704e-24, 5.104389029959818e-29, 6.47250148436791e-35, 2.6714004677553167e-19]
length of y_true: 383
finish loading y_true  y_scores
fpr:
[ 0.          0.03977273  0.04545455  0.04545455  0.05113636  0.05113636
  0.0625      0.0625      0.06818182  0.06818182  0.08522727  0.08522727
  0.09090909  0.09090909  0.09659091  0.09659091  0.10795455  0.10795455
  0.11363636  0.11363636  0.11931818  0.11931818  0.13068182  0.13068182
  0.13636364  0.13636364  0.15340909  0.15340909  0.15909091  0.15909091
  0.1875      0.1875      0.19886364  0.19886364  0.20454545  0.20454545
  0.21590909  0.21590909  0.22159091  0.22159091  0.25        0.25
  0.27840909  0.27840909  0.28977273  0.28977273  0.31818182  0.31818182
  0.32954545  0.32954545  0.34090909  0.34090909  0.35227273  0.35227273
  0.375       0.375       0.44886364  0.44886364  0.47159091  0.47159091
  0.48295455  0.48295455  0.51704545  0.51704545  0.53977273  0.53977273
  0.55113636  0.55113636  0.59090909  0.59090909  0.69318182  0.69318182
  0.85795455  0.85795455  0.875       0.875       0.90909091  0.90909091
  1.        ]
79
tpr:
[ 0.          0.73429952  0.73429952  0.74396135  0.74396135  0.76328502
  0.76328502  0.76811594  0.76811594  0.78743961  0.78743961  0.79227053
  0.79227053  0.83091787  0.83091787  0.83574879  0.83574879  0.84057971
  0.84057971  0.84541063  0.84541063  0.85024155  0.85024155  0.85507246
  0.85507246  0.85990338  0.85990338  0.8647343   0.8647343   0.86956522
  0.86956522  0.87439614  0.87439614  0.88405797  0.88405797  0.88888889
  0.88888889  0.89371981  0.89371981  0.89855072  0.89855072  0.90338164
  0.90338164  0.9178744   0.9178744   0.92270531  0.92270531  0.92753623
  0.92753623  0.93236715  0.93236715  0.93719807  0.93719807  0.94202899
  0.94202899  0.9468599   0.9468599   0.95169082  0.95169082  0.95652174
  0.95652174  0.96135266  0.96135266  0.96618357  0.96618357  0.97101449
  0.97101449  0.97584541  0.97584541  0.98067633  0.98067633  0.98550725
  0.98550725  0.99033816  0.99033816  0.99516908  0.99516908  1.          1.        ]
79




评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值