det_curve#

sklearn.metrics.det_curve(y_true, y_score, pos_label=None, sample_weight=None, drop_intermediate=False)[Quelle]#

Berechne Detection Error Tradeoff (DET) für verschiedene Wahrscheinlichkeitsschwellen.

Hinweis: Unterstützung über binäre Klassifikationsaufgaben hinaus mittels One-vs-Rest oder One-vs-One ist nicht implementiert.

Die DET-Kurve wird zur Bewertung von Rangordnungen und Fehlertragwerken in binären Klassifikationsaufgaben verwendet.

Lesen Sie mehr im Benutzerhandbuch.

Hinzugefügt in Version 0.24.

Geändert in Version 1.7: Ein willkürlicher Schwellenwert bei Unendlich wird hinzugefügt, um einen Klassifikator darzustellen, der immer die negative Klasse vorhersagt, d. h. fpr=0 und fnr=1, es sei denn, fpr=0 wird bereits bei einem endlichen Schwellenwert erreicht.

Parameter:
y_truendarray mit Form (n_samples,)

Wahre binäre Labels. Wenn die Labels weder {-1, 1} noch {0, 1} sind, sollte pos_label explizit angegeben werden.

y_scorendarray der Form (n_samples,)

Zielwerte, können entweder Wahrscheinlichkeitsschätzungen der positiven Klasse, Konfidenzwerte oder nicht-schwellenwertbasierte Entscheidungsmaße sein (wie sie von „decision_function“ bei einigen Klassifikatoren zurückgegeben werden). Für decision_function-Scores sollten Werte größer oder gleich Null die positive Klasse anzeigen.

pos_labelint, float, bool oder str, Standardwert=None

Das Label der positiven Klasse. Wenn pos_label=None ist, und y_true in {-1, 1} oder {0, 1} liegt, wird pos_label auf 1 gesetzt, andernfalls wird ein Fehler ausgelöst.

sample_weightarray-like der Form (n_samples,), Standardwert=None

Stichprobengewichte.

drop_intermediatebool, Standard=False

Ob Schwellenwerte, bei denen sich die tatsächlichen Positiven (tp) vom vorherigen oder nachfolgenden Schwellenwert nicht ändern, verworfen werden sollen. Alle Punkte mit demselben tp-Wert haben denselben fnr und somit dieselbe y-Koordinate.

Hinzugefügt in Version 1.7.

Gibt zurück:
fprndarray der Form (n_thresholds,)

Falsch-Positiv-Rate (FPR), so dass Element i die falsch-positiv-Rate von Vorhersagen mit Score >= thresholds[i] ist. Dies wird gelegentlich als Wahrscheinlichkeit für eine falsche Akzeptanz oder als Ausfallrate bezeichnet.

fnrndarray der Form (n_thresholds,)

Falsch-Negativ-Rate (FNR), so dass Element i die falsch-negativ-Rate von Vorhersagen mit Score >= thresholds[i] ist. Dies wird gelegentlich als falsche Ablehnung oder Fehlrate bezeichnet.

thresholdsndarray der Form (n_thresholds,)

Absteigende Schwellenwerte auf der Entscheidungsgrundlage (entweder predict_proba oder decision_function), die zur Berechnung von FPR und FNR verwendet werden.

Geändert in Version 1.7: Ein willkürlicher Schwellenwert bei Unendlich wird für den Fall hinzugefügt, dass fpr=0 und fnr=1.

Siehe auch

DetCurveDisplay.from_estimator

Zeichnet eine DET-Kurve anhand eines Schätzers und einiger Daten.

DetCurveDisplay.from_predictions

Zeichnet eine DET-Kurve anhand der wahren und vorhergesagten Labels.

DetCurveDisplay

DET-Kurvenvisualisierung.

roc_curve

Berechnen Sie die Receiver Operating Characteristic (ROC)-Kurve.

precision_recall_curve

Berechnet die Präzisions-Recall-Kurve.

confusion_matrix_at_thresholds

Berechnet im binären Fall die Zählungen von True Negative, False Positive, False Negative und True Positive pro Schwellenwert.

Beispiele

>>> 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 ])