calibration_curve#
- sklearn.calibration.calibration_curve(y_true, y_prob, *, pos_label=None, n_bins=5, strategy='uniform')[Quelle]#
Berechnet wahre und vorhergesagte Wahrscheinlichkeiten für eine Kalibrierungskurve.
Die Methode geht davon aus, dass die Eingaben von einem binären Klassifikator stammen, und diskretisiert das Intervall [0, 1] in Bins.
Kalibrierungskurven können auch als Zuverlässigkeitsdiagramme bezeichnet werden.
Lesen Sie mehr im Benutzerhandbuch.
- Parameter:
- y_truearray-ähnlich mit Form (n_samples,)
Wahre Zielwerte.
- y_probarray-ähnlich mit Form (n_samples,)
Wahrscheinlichkeiten der positiven Klasse.
- pos_labelint, float, bool oder str, Standardwert=None
Das Label der positiven Klasse.
Hinzugefügt in Version 1.1.
- n_binsint, Standard=5
Anzahl der Bins zur Diskretisierung des Intervalls [0, 1]. Eine größere Anzahl erfordert mehr Daten. Bins ohne Stichproben (d.h. ohne entsprechende Werte in
y_prob) werden nicht zurückgegeben, daher können die zurückgegebenen Arrays weniger alsn_binsWerte enthalten.- strategy{‘uniform’, ‘quantile’}, Standard=’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
y_probab.
- Gibt zurück:
- prob_truendarray mit Form (n_bins,) oder kleiner
Der Anteil der Stichproben, deren Klasse die positive Klasse ist, in jedem Bin (Anteil der positiven Fälle).
- prob_predndarray mit Form (n_bins,) oder kleiner
Die mittlere vorhergesagte Wahrscheinlichkeit in jedem Bin.
Siehe auch
CalibrationDisplay.from_predictionsZeichnet die Kalibrierungskurve unter Verwendung von wahren und vorhergesagten Labels.
CalibrationDisplay.from_estimatorZeichnet die Kalibrierungskurve unter Verwendung eines Schätzers und von Daten.
Referenzen
Alexandru Niculescu-Mizil und Rich Caruana (2005) Predicting Good Probabilities With Supervised Learning, in Proceedings of the 22nd International Conference on Machine Learning (ICML). Siehe Abschnitt 4 (Qualitative Analysis of Predictions).
Beispiele
>>> import numpy as np >>> from sklearn.calibration import calibration_curve >>> y_true = np.array([0, 0, 0, 0, 1, 1, 1, 1, 1]) >>> y_pred = np.array([0.1, 0.2, 0.3, 0.4, 0.65, 0.7, 0.8, 0.9, 1.]) >>> prob_true, prob_pred = calibration_curve(y_true, y_pred, n_bins=3) >>> prob_true array([0. , 0.5, 1. ]) >>> prob_pred array([0.2 , 0.525, 0.85 ])