CalibrationDisplay#

class sklearn.calibration.CalibrationDisplay(prob_true, prob_pred, y_prob, *, estimator_name=None, pos_label=None)[Quelle]#

Visualisierung der Kalibrierungskurve (auch bekannt als Zuverlässigkeitsdiagramm).

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

Lesen Sie mehr über Kalibrierung im Benutzerhandbuch und mehr über die scikit-learn Visualisierungs-API unter Visualisierungen.

Ein Beispiel für die Verwendung der Visualisierung finden Sie unter Kalibrierungskurven für Wahrscheinlichkeiten.

Hinzugefügt in Version 1.0.

Parameter:
prob_truendarray der Form (n_bins,)

Der Anteil der Stichproben, deren Klasse die positive Klasse ist (Anteil positiver Fälle), in jedem Bin.

prob_predndarray der Form (n_bins,)

Die mittlere vorhergesagte Wahrscheinlichkeit in jedem Bin.

y_probndarray der Form (n_samples,)

Vorhergesagte Wahrscheinlichkeiten für die positive Klasse für jede Stichprobe.

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

Die positive Klasse, wenn die Kalibrierungskurve berechnet wird. Wenn nicht None, wird dieser Wert in den Beschriftungen der x- und y-Achsen angezeigt.

Hinzugefügt in Version 1.1.

Attribute:
line_matplotlib Artist

Kalibrierungskurve.

ax_matplotlib Axes

Achsen mit Kalibrierungskurve.

figure_matplotlib Figure

Abbildung, die die Kurve enthält.

Siehe auch

calibration_curve

Berechnet wahre und vorhergesagte Wahrscheinlichkeiten für eine Kalibrierungskurve.

CalibrationDisplay.from_predictions

Zeichnet die Kalibrierungskurve mithilfe von wahren und vorhergesagten Labels.

CalibrationDisplay.from_estimator

Zeichnet die Kalibrierungskurve mithilfe eines Schätzers und Daten.

Beispiele

>>> from sklearn.datasets import make_classification
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.linear_model import LogisticRegression
>>> from sklearn.calibration import calibration_curve, CalibrationDisplay
>>> X, y = make_classification(random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(
...     X, y, random_state=0)
>>> clf = LogisticRegression(random_state=0)
>>> clf.fit(X_train, y_train)
LogisticRegression(random_state=0)
>>> y_prob = clf.predict_proba(X_test)[:, 1]
>>> prob_true, prob_pred = calibration_curve(y_test, y_prob, n_bins=10)
>>> disp = CalibrationDisplay(prob_true, prob_pred, y_prob)
>>> disp.plot()
<...>
classmethod from_estimator(estimator, X, y, *, n_bins=5, strategy='uniform', pos_label=None, name=None, ax=None, ref_line=True, **kwargs)[Quelle]#

Zeichnet die Kalibrierungskurve mithilfe eines binären Klassifikators und Daten.

Eine Kalibrierungskurve, auch bekannt als Zuverlässigkeitsdiagramm, verwendet Eingaben von einem binären Klassifikator und zeichnet die durchschnittliche vorhergesagte Wahrscheinlichkeit für jeden Bin gegen den Anteil positiver Klassen auf der y-Achse.

Zusätzliche Schlüsselwortargumente werden an matplotlib.pyplot.plot übergeben.

Lesen Sie mehr über Kalibrierung im Benutzerhandbuch und mehr über die scikit-learn Visualisierungs-API unter Visualisierungen.

Hinzugefügt in Version 1.0.

Parameter:
estimatorSchätzer-Instanz

Trainierter Klassifikator oder eine trainierte Pipeline, bei der der letzte Schätzer ein Klassifikator ist. Der Klassifikator muss über eine predict_proba-Methode verfügen.

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

Eingabewerte.

yarray-like von Form (n_samples,)

Binäre Zielwerte.

n_binsint, Standardwert=5

Anzahl der Bins, in die das Intervall [0, 1] zur Berechnung der Kalibrierungskurve diskretisiert wird. Eine größere Anzahl erfordert mehr Daten.

strategy{‘uniform’, ‘quantile’}, Standardwert=’uniform’

Strategie zur Bestimmung der Breiten der Bins.

  • 'uniform': Die Bins haben identische Breiten.

  • 'quantile': Die Bins haben die gleiche Anzahl von Stichproben und hängen von den vorhergesagten Wahrscheinlichkeiten ab.

pos_labelint, float, bool oder str, Standardwert=None

Die positive Klasse bei der Berechnung der Kalibrierungskurve. Standardmäßig wird estimators.classes_[1] als positive Klasse betrachtet.

Hinzugefügt in Version 1.1.

namestr, Standardwert=None

Name zur Beschriftung der Kurve. 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.

ref_linebool, Standardwert=True

Wenn True, wird eine Referenzlinie gezeichnet, die einen perfekt kalibrierten Klassifikator darstellt.

**kwargsdict

Schlüsselwortargumente, die an matplotlib.pyplot.plot übergeben werden.

Gibt zurück:
displayCalibrationDisplay.

Objekt, das berechnete Werte speichert.

Siehe auch

CalibrationDisplay.from_predictions

Zeichnet die Kalibrierungskurve mithilfe von wahren und vorhergesagten Labels.

Beispiele

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.linear_model import LogisticRegression
>>> from sklearn.calibration import CalibrationDisplay
>>> X, y = make_classification(random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(
...     X, y, random_state=0)
>>> clf = LogisticRegression(random_state=0)
>>> clf.fit(X_train, y_train)
LogisticRegression(random_state=0)
>>> disp = CalibrationDisplay.from_estimator(clf, X_test, y_test)
>>> plt.show()
../../_images/sklearn-calibration-CalibrationDisplay-1.png
classmethod from_predictions(y_true, y_prob, *, n_bins=5, strategy='uniform', pos_label=None, name=None, ax=None, ref_line=True, **kwargs)[Quelle]#

Zeichnet die Kalibrierungskurve mithilfe von wahren Labels und vorhergesagten Wahrscheinlichkeiten.

Kalibrierungskurve, auch bekannt als Zuverlässigkeitsdiagramm, verwendet Eingaben von einem binären Klassifikator und zeichnet die durchschnittliche vorhergesagte Wahrscheinlichkeit für jeden Bin gegen den Anteil positiver Klassen auf der y-Achse.

Zusätzliche Schlüsselwortargumente werden an matplotlib.pyplot.plot übergeben.

Lesen Sie mehr über Kalibrierung im Benutzerhandbuch und mehr über die scikit-learn Visualisierungs-API unter Visualisierungen.

Hinzugefügt in Version 1.0.

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

Wahre Labels.

y_probarray-like der Form (n_samples,)

Die vorhergesagten Wahrscheinlichkeiten der positiven Klasse.

n_binsint, Standardwert=5

Anzahl der Bins, in die das Intervall [0, 1] zur Berechnung der Kalibrierungskurve diskretisiert wird. Eine größere Anzahl erfordert mehr Daten.

strategy{‘uniform’, ‘quantile’}, Standardwert=’uniform’

Strategie zur Bestimmung der Breiten der Bins.

  • 'uniform': Die Bins haben identische Breiten.

  • 'quantile': Die Bins haben die gleiche Anzahl von Stichproben und hängen von den vorhergesagten Wahrscheinlichkeiten ab.

pos_labelint, float, bool oder str, Standardwert=None

Die positive Klasse bei der Berechnung der Kalibrierungskurve. 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.

Hinzugefügt in Version 1.1.

namestr, Standardwert=None

Name zur Beschriftung der Kurve.

axmatplotlib axes, Standardwert=None

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

ref_linebool, Standardwert=True

Wenn True, wird eine Referenzlinie gezeichnet, die einen perfekt kalibrierten Klassifikator darstellt.

**kwargsdict

Schlüsselwortargumente, die an matplotlib.pyplot.plot übergeben werden.

Gibt zurück:
displayCalibrationDisplay.

Objekt, das berechnete Werte speichert.

Siehe auch

CalibrationDisplay.from_estimator

Zeichnet die Kalibrierungskurve mithilfe eines Schätzers und Daten.

Beispiele

>>> import matplotlib.pyplot as plt
>>> from sklearn.datasets import make_classification
>>> from sklearn.model_selection import train_test_split
>>> from sklearn.linear_model import LogisticRegression
>>> from sklearn.calibration import CalibrationDisplay
>>> X, y = make_classification(random_state=0)
>>> X_train, X_test, y_train, y_test = train_test_split(
...     X, y, random_state=0)
>>> clf = LogisticRegression(random_state=0)
>>> clf.fit(X_train, y_train)
LogisticRegression(random_state=0)
>>> y_prob = clf.predict_proba(X_test)[:, 1]
>>> disp = CalibrationDisplay.from_predictions(y_test, y_prob)
>>> plt.show()
../../_images/sklearn-calibration-CalibrationDisplay-2.png
plot(*, ax=None, name=None, ref_line=True, **kwargs)[Quelle]#

Visualisierung plotten.

Zusätzliche Schlüsselwortargumente werden an matplotlib.pyplot.plot übergeben.

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 zur Beschriftung der Kurve. Wenn None, wird estimator_name verwendet, falls dieser nicht None ist, ansonsten wird keine Beschriftung angezeigt.

ref_linebool, Standardwert=True

Wenn True, wird eine Referenzlinie gezeichnet, die einen perfekt kalibrierten Klassifikator darstellt.

**kwargsdict

Schlüsselwortargumente, die an matplotlib.pyplot.plot übergeben werden.

Gibt zurück:
displayCalibrationDisplay

Objekt, das berechnete Werte speichert.