1. fpr tpr等五个指标记录
def calculate_fpr_tpr_tnr_f1score_accuracy(y_true, y_pred):
'''
y_true 和 y_pred均是ndarray类型。
'''
y_true = y_true.flatten()
y_pred = y_pred.flatten()
Tp = 0
Fp = 0
Tn = 0
Fn = 0
for label, pred in zip(y_true, y_pred):
if (label == 0) and (pred == 0):
Tp = Tp + 1
elif (label == 1) and (pred == 0):
Fp = Fp + 1
elif (label == 1) and (pred == 1):
Tn = Tn + 1
elif (label == 0) and (pred == 1):
Fn = Fn + 1
else:
print('something weird with labels')
return -1
# sys.exit()
# calculate precision, recall, accuracy, f1
# it's possible for division by zero in some of these cases, so do a try/except
try:
precision = Tp / (Tp + Fp)
except:
precision = 0
try:
recall = Tp / (Tp + Fn)
except:
recall = 0
try:
accuracy = (Tn + Tp) / (Tn + Tp

最低0.47元/天 解锁文章
2696

被折叠的 条评论
为什么被折叠?



