DetCurveDisplay#

class sklearn.metrics.DetCurveDisplay(*, fpr, fnr, estimator_name=None, pos_label=None)[Quellcode]#

Visualisierung der Detection Error Tradeoff (DET) Kurve.

Es wird empfohlen, from_estimator oder from_predictions zu verwenden, um einen Visualizer zu erstellen. Alle Parameter werden als Attribute gespeichert.

Allgemeine Informationen zu den Visualisierungstools von scikit-learn finden Sie im Visualisierungsleitfaden. Anleitungen zur Interpretation dieser Diagramme finden Sie im Leitfaden zur Modellbewertung.

Hinzugefügt in Version 0.24.

Parameter:
fprndarray

Falsche positive Rate.

fnrndarray

Falsche negative Rate.

estimator_namestr, Standardwert=None

Name des Schätzers. Wenn None, wird der Name des Schätzers nicht angezeigt.

pos_labelint, float, bool oder str, Standardwert=None

Das Label der positiven Klasse. Wenn nicht None, wird dieser Wert in den x- und y-Achsenbeschriftungen angezeigt.

Attribute:
line_matplotlib Artist

DET-Kurve.

ax_matplotlib Axes

Achsen mit DET-Kurve.

figure_matplotlib Figure

Abbildung, die die Kurve enthält.

Siehe auch

det_curve

Berechnet Fehlerraten für verschiedene Wahrscheinlichkeitsschwellenwerte.

DetCurveDisplay.from_estimator

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

DetCurveDisplay.from_predictions

DET-Kurve anhand der wahren und vorhergesagten Labels zeichnen.

Beispiele

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.metrics import det_curve, DetCurveDisplay
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.svm import SVC
>>> X, y = make_classification(n_samples=1000, random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(
...     X, y, test_size=0.4, random_state=0)
>>> clf = SVC(random_state=0).fit(X_train, y_train)
>>> y_score = clf.decision_function(X_test)
>>> fpr, fnr, _ = det_curve(y_test, y_score)
>>> display = DetCurveDisplay(
...     fpr=fpr, fnr=fnr, estimator_name="SVC"
... )
>>> display.plot()
<...>
>>> plt.show()
../../_images/sklearn-metrics-DetCurveDisplay-1.png
classmethod from_estimator(estimator, X, y, *, sample_weight=None, drop_intermediate=True, response_method='auto', pos_label=None, name=None, ax=None, **kwargs)[Quellcode]#

DET-Kurve anhand eines Schätzers und von Daten zeichnen.

Allgemeine Informationen zu den Visualisierungstools von scikit-learn finden Sie im Visualisierungsleitfaden. Anleitungen zur Interpretation dieser Diagramme finden Sie im Leitfaden zur Modellbewertung.

Hinzugefügt in Version 1.0.

Parameter:
estimatorSchätzer-Instanz

Gefitteter Klassifikator oder eine gefittete Pipeline, bei der der letzte Schätzer ein Klassifikator ist.

X{array-like, sparse matrix} der Form (n_samples, n_features)

Eingabewerte.

yarray-like von Form (n_samples,)

Zielwerte.

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

Stichprobengewichte.

drop_intermediatebool, Standardwert=True

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

Hinzugefügt in Version 1.7.

response_method{‘predict_proba’, ‘decision_function’, ‘auto’} Standard=’auto’

Gibt an, ob predict_proba oder decision_function als vorhergesagte Zielantwort verwendet werden soll. Wenn auf 'auto' gesetzt, wird zuerst predict_proba versucht und wenn diese nicht existiert, wird als nächstes decision_function versucht.

pos_labelint, float, bool oder str, Standardwert=None

Das Label der positiven Klasse. Standardmäßig wird estimators.classes_[1] als positive Klasse betrachtet.

namestr, Standardwert=None

Name der DET-Kurve für die Beschriftung. Wenn None, wird der Name des Schätzers verwendet.

axmatplotlib axes, Standardwert=None

Axes-Objekt, auf dem geplottet werden soll. Wenn None, wird eine neue Figur und Achse erstellt.

**kwargsdict

Zusätzliche Schlüsselwortargumente, die an die plot-Funktion von matplotlib übergeben werden.

Gibt zurück:
displayDetCurveDisplay

Objekt, das berechnete Werte speichert.

Siehe auch

det_curve

Berechnet Fehlerraten für verschiedene Wahrscheinlichkeitsschwellenwerte.

DetCurveDisplay.from_predictions

DET-Kurve anhand der wahren und vorhergesagten Labels zeichnen.

Beispiele

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.metrics import DetCurveDisplay
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.svm import SVC
>>> X, y = make_classification(n_samples=1000, random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(
...     X, y, test_size=0.4, random_state=0)
>>> clf = SVC(random_state=0).fit(X_train, y_train)
>>> DetCurveDisplay.from_estimator(
...    clf, X_test, y_test)
<...>
>>> plt.show()
../../_images/sklearn-metrics-DetCurveDisplay-2.png
classmethod from_predictions(y_true, y_score=None, *, sample_weight=None, drop_intermediate=True, pos_label=None, name=None, ax=None, y_pred='deprecated', **kwargs)[Quellcode]#

DET-Kurve anhand der wahren und vorhergesagten Labels zeichnen.

Allgemeine Informationen zu den Visualisierungstools von scikit-learn finden Sie im Visualisierungsleitfaden. Anleitungen zur Interpretation dieser Diagramme finden Sie im Leitfaden zur Modellbewertung.

Hinzugefügt in Version 1.0.

Parameter:
y_truearray-ähnlich mit Form (n_samples,)

Wahre Labels.

y_scorearray-artig der Form (n_samples,)

Zielwerte (Scores). Können entweder Wahrscheinlichkeitsschätzungen der positiven Klasse, Konfidenzwerte oder nicht-schwellenwertbasierte Messungen von Entscheidungen sein (wie von decision_function bei einigen Klassifikatoren zurückgegeben).

Hinzugefügt in Version 1.8: y_pred wurde in y_score umbenannt.

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

Stichprobengewichte.

drop_intermediatebool, Standardwert=True

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

Hinzugefügt in Version 1.7.

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.

namestr, Standardwert=None

Name der DET-Kurve für die Beschriftung. Wenn None, wird der Name auf "Classifier" gesetzt.

axmatplotlib axes, Standardwert=None

Axes-Objekt, auf dem geplottet werden soll. Wenn None, wird eine neue Figur und Achse erstellt.

y_predarray-ähnlich mit Form (n_samples,)

Zielwerte (Scores). Können entweder Wahrscheinlichkeitsschätzungen der positiven Klasse, Konfidenzwerte oder nicht-schwellenwertbasierte Messungen von Entscheidungen sein (wie von "decision_function" bei einigen Klassifikatoren zurückgegeben).

Veraltet seit Version 1.8: y_pred ist veraltet und wird in Version 1.10 entfernt. Verwenden Sie stattdessen y_score.

**kwargsdict

Zusätzliche Schlüsselwortargumente, die an die plot-Funktion von matplotlib übergeben werden.

Gibt zurück:
displayDetCurveDisplay

Objekt, das berechnete Werte speichert.

Siehe auch

det_curve

Berechnet Fehlerraten für verschiedene Wahrscheinlichkeitsschwellenwerte.

DetCurveDisplay.from_estimator

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

Beispiele

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.metrics import DetCurveDisplay
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.svm import SVC
>>> X, y = make_classification(n_samples=1000, random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(
...     X, y, test_size=0.4, random_state=0)
>>> clf = SVC(random_state=0).fit(X_train, y_train)
>>> y_score = clf.decision_function(X_test)
>>> DetCurveDisplay.from_predictions(
...    y_test, y_score)
<...>
>>> plt.show()
../../_images/sklearn-metrics-DetCurveDisplay-3.png
plot(ax=None, *, name=None, **kwargs)[Quellcode]#

Visualisierung plotten.

Parameter:
axmatplotlib axes, Standardwert=None

Axes-Objekt, auf dem geplottet werden soll. Wenn None, wird eine neue Figur und Achse erstellt.

namestr, Standardwert=None

Name der DET-Kurve für die Beschriftung. Wenn None, wird estimator_name verwendet, wenn dieser nicht None ist, andernfalls wird keine Beschriftung angezeigt.

**kwargsdict

Zusätzliche Schlüsselwortargumente, die an die plot-Funktion von matplotlib übergeben werden.

Gibt zurück:
displayDetCurveDisplay

Objekt, das berechnete Werte speichert.