1、用python画pr曲线的代码如下:
sklearn.metrics.precision_recall_curve(y_true, probas_pred, pos_label=None, sample_weight=None)
2、代码详解
precision(精度)为tp / (tp + fp),其中tp为真阳性数,fp为假阳性数。
recall(召回率)是tp / (tp + fn),其中tp是真阳性数,fn是假阴性数。
参数:
y_true:array, shape = [n_samples]:真实标签。如果标签不是{-1,1}或{0,1},那么pos_label应该显式给出。
probas_pred:array, shape = [n_samples] :正类的预测概率或决策函数
pos_label:int or str, default=None:正类标签。当pos_label=None时,如果y_true为{- 1,1}或{0,1},则pos_label设置为1,否则将报错。
返回值:
precision:array, shape = [n_thresholds + 1]:精度,最后一个元素是1。
recall:array, shape = [n_thresholds + 1]:召回率,最后一个是0
thresholds:array, shape = [n_thresholds <= len(np.unique(probas_pred))]:用于计算精度和召回率的决策函数的阈值