召回与精度图
Posted
技术标签:
【中文标题】召回与精度图【英文标题】:recall vs precision graph 【发布时间】:2020-01-23 15:05:15 【问题描述】:我正在尝试绘制精确率与召回率的图表,这是我的分类报告。我不知道如何绘制显示这些的图表。 这是我的分类报告代码
from sklearn.metrics import classification_report
print("")
print("Confusion Matrix")
print(confusion_matrix(Y_test, predictions))
print("")
print("Classification Report XGBOOST")
print(classification_report(predictions,Y_test))
输出:
Confusion Matrix
[[1163 55]
[ 46 665]]
Classification Report xgboost
precision recall f1-score support
0 0.95 0.96 0.96 1209
1 0.94 0.92 0.93 720
accuracy 0.95 1929
macro avg 0.95 0.94 0.94 1929
weighted avg 0.95 0.95 0.95 1929
我正在尝试做这样的事情:
使用图表显示我的精确度和召回率。
【问题讨论】:
看看sklearn.metrics.roc_curve
【参考方案1】:
from sklearn.metrics import precision_recall_curve
precision, recall, thresholds = precision_recall_curve(Y_test,predictions)
plt.step(recall, precision, color='b', alpha=0.2,
where='post')
plt.fill_between(recall, precision, alpha=0.2, color='b')
plt.xlabel('Recall')
plt.ylabel('Precision')
plt.ylim([0.0, 1.05])
plt.xlim([0.0, 1.0])
试试这个。
【讨论】:
以上是关于召回与精度图的主要内容,如果未能解决你的问题,请参考以下文章