det_curve#

sklearn.metrics.det_curve(y_true, y_score, pos_label=None, sample_weight=None)#

计算不同概率阈值下的错误率。

Note

该指标用于评估二分类任务的排序和错误权衡。

更多信息请参阅 用户指南

Added in version 0.24.

Parameters:
y_truendarray of shape (n_samples,)

真实的二进制标签。如果标签不是{-1, 1}或{0, 1},则应明确给出pos_label。

y_scorendarray of shape of (n_samples,)

目标分数,可以是正类的概率估计、置信值或无阈值的决策度量(如某些分类器的“decision_function”返回的值)。

pos_labelint, float, bool or str, default=None

正类的标签。 当 pos_label=None 时,如果 y_true 在{-1, 1}或{0, 1}中, pos_label 设置为1,否则将引发错误。

sample_weightarray-like of shape (n_samples,), default=None

样本权重。

Returns:
fprndarray of shape (n_thresholds,)

假阳性率(FPR),使得元素i是分数>=阈值[i]的预测的假阳性率。这有时被称为误接受概率或假警报率。

fnrndarray of shape (n_thresholds,)

假阴性率(FNR),使得元素i是分数>=阈值[i]的预测的假阴性率。这有时被称为误拒绝或漏检率。

thresholdsndarray of shape (n_thresholds,)

递减的分数值。

See also

DetCurveDisplay.from_estimator

给定估计器和数据绘制DET曲线。

DetCurveDisplay.from_predictions

给定真实标签和预测标签绘制DET曲线。

DetCurveDisplay

DET曲线可视化。

roc_curve

计算接收者操作特征(ROC)曲线。

precision_recall_curve

计算精确召回曲线。

Examples

>>> import numpy as np
>>> from sklearn.metrics import det_curve
>>> y_true = np.array([0, 0, 1, 1])
>>> y_scores = np.array([0.1, 0.4, 0.35, 0.8])
>>> fpr, fnr, thresholds = det_curve(y_true, y_scores)
>>> fpr
array([0.5, 0.5, 0. ])
>>> fnr
array([0. , 0.5, 0.5])
>>> thresholds
array([0.35, 0.4 , 0.8 ])