基础知识
TP | FN |
FP | TN |
其中TP表示正确分类的正样本数
FN表示被错误标记成负样本的正样本数
FP指的是被错误标记成正样本的负样本数
TN指的是正确分类的负样本数
PR曲线中P指Precision表示查准率,R指Recall表示查全率或者是召回率
Python实现
import numpy as np
import matplotlib.pyplot as plt
from sklearn.metrics import precision_recall_curve
plt.figure(1) # 创建图表
plt.title('Precision/Recall Curve')
plt.xlabel('Recall')
plt.ylabel('Precision')
y_true = np.array([0, 0, 1, 1, 0, 1])
y_scores = np.array([0.1, 0.7, 0.3, 0.9, 0.33, 0.56])
precision, recall, thresholds = precision_recall_curve(y_true, y_scores)
print(precision, recall)
plt.figure(1)
plt.plot(precision, recall)
plt.show()
代码来源:https://blog.csdn.net/u014568921/article/details/53843311?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-53843311-blog-104512608.pc_relevant_3mothn_strategy_and_data_recovery&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-53843311-blog-104512608.pc_relevant_3mothn_strategy_and_data_recovery&utm_relevant_index=5