代码详解:
import numpy as np
import matplotlib.pyplot as plt
from sklearn.preprocessing import label_binarize
from sklearn.metrics import confusion_matrix,classification_report
from sklearn.metrics import roc_curve, auc
from sklearn.metrics import cohen_kappa_score, accuracy_score
with open("batch_16_epoch_2.txt","r",encoding="utf-8") as f:
y_true, y_sore,y_pre=[],[],[]
f=f.readlines()
data=[i.split("\n")[0].split(" ") for i in f ]
print("# 第一列是真实值 第二列是分数 第三列是预测值",data)
for line in data:
y_true.append(int(line[0]))
y_sore.append(float(line[1]))
y_pre.append(int(line[2]))
from sklearn.metrics import roc_curve, auc
fpr, tpr, thresholds = roc_curve(y_true,y_pre)# 真实值 预测值
roc_auc = auc(fpr, tpr)
plt.title('Receiver Operating Characteristic')
plt.plot(fpr, tpr, '#9400D3',label=u'AUC = %0.3f'