DecisionBoundaryDisplay#
- class sklearn.inspection.DecisionBoundaryDisplay(*, xx0, xx1, response, multiclass_colors=None, xlabel=None, ylabel=None)[Quelle]#
Visualisierung von Entscheidungsgrenzen.
Es wird empfohlen,
from_estimatorzu verwenden, um eineDecisionBoundaryDisplayzu erstellen. Alle Parameter werden als Attribute gespeichert.Lesen Sie mehr im Benutzerhandbuch.
Ein detailliertes Beispiel, das die Entscheidungsgrenzen von multinomialer und One-vs-Rest-Logistischer Regression vergleicht, finden Sie unter Entscheidungsgrenzen von multinomialer und One-vs-Rest-Logistischer Regression.
Hinzugefügt in Version 1.1.
- Parameter:
- xx0ndarray der Form (grid_resolution, grid_resolution)
Erste Ausgabe von
meshgrid.- xx1ndarray der Form (grid_resolution, grid_resolution)
Zweite Ausgabe von
meshgrid.- responsendarray der Form (grid_resolution, grid_resolution) oder (grid_resolution, grid_resolution, n_classes)
Werte der Response-Funktion.
- multiclass_colorsListe von str oder str, Standard=None
Gibt an, wie jede Klasse beim Plotten aller Klassen eines Multiklassenproblems gefärbt werden soll. Wird für binäre Probleme und Multiklassenprobleme ignoriert, wenn nur ein Vorhersagewert pro Punkt geplottet wird. Mögliche Eingaben sind
Liste: Liste von Matplotlib Farb-Strings der Länge
n_classesstr: Name einer
matplotlib.colors.ColormapNone: Die Colormap 'viridis' wird verwendet, um Farben abzutasten
Einfarbige Colormaps werden aus den Farben in der Liste generiert oder Farben aus der Colormap entnommen und dem Parameter
cmapderplot_methodübergeben.Hinzugefügt in Version 1.7.
- xlabelstr, Standard=None
Standardbeschriftung für die x-Achse.
- ylabelstr, Standard=None
Standardbeschriftung für die y-Achse.
- Attribute:
- surface_matplotlib
QuadContourSetoderQuadMeshoder Liste solcher Objekte Wenn
plot_method'contour' oder 'contourf' ist, istsurface_einQuadContourSet. Wennplot_method'pcolormesh' ist, istsurface_einQuadMesh.- multiclass_colors_array der Form (n_classes, 4)
Farben, die zum Plotten jeder Klasse in Multiklassenproblemen verwendet werden. Nur definiert, wenn
color_of_interestNone ist.Hinzugefügt in Version 1.7.
- ax_matplotlib Axes
Achsen mit Entscheidungsgrenze.
- figure_matplotlib Figure
Figur, die die Entscheidungsgrenze enthält.
- surface_matplotlib
Siehe auch
DecisionBoundaryDisplay.from_estimatorEntscheidungsgrenze basierend auf einem Schätzer plotten.
Beispiele
>>> import matplotlib.pyplot as plt >>> import numpy as np >>> from sklearn.datasets import load_iris >>> from sklearn.inspection import DecisionBoundaryDisplay >>> from sklearn.tree import DecisionTreeClassifier >>> iris = load_iris() >>> feature_1, feature_2 = np.meshgrid( ... np.linspace(iris.data[:, 0].min(), iris.data[:, 0].max()), ... np.linspace(iris.data[:, 1].min(), iris.data[:, 1].max()) ... ) >>> grid = np.vstack([feature_1.ravel(), feature_2.ravel()]).T >>> tree = DecisionTreeClassifier().fit(iris.data[:, :2], iris.target) >>> y_pred = np.reshape(tree.predict(grid), feature_1.shape) >>> display = DecisionBoundaryDisplay( ... xx0=feature_1, xx1=feature_2, response=y_pred ... ) >>> display.plot() <...> >>> display.ax_.scatter( ... iris.data[:, 0], iris.data[:, 1], c=iris.target, edgecolor="black" ... ) <...> >>> plt.show()
- classmethod from_estimator(estimator, X, *, grid_resolution=100, eps=1.0, plot_method='contourf', response_method='auto', class_of_interest=None, multiclass_colors=None, xlabel=None, ylabel=None, ax=None, **kwargs)[Quelle]#
Entscheidungsgrenze basierend auf einem Schätzer plotten.
Lesen Sie mehr im Benutzerhandbuch.
- Parameter:
- estimatorobjekt
Trainierter Schätzer, der zum Plotten der Entscheidungsgrenze verwendet wird.
- X{array-like, sparse matrix, dataframe} der Form (n_samples, 2)
Eingabedaten, die nur 2-dimensional sein sollten.
- grid_resolutionint, Standard=100
Anzahl der zu verwendenden Gitterpunkte für das Plotten der Entscheidungsgrenze. Höhere Werte lassen das Diagramm besser aussehen, sind aber langsamer zu rendern.
- epsfloat, Standard=1.0
Erweitert die minimalen und maximalen Werte von X zur Auswertung der Response-Funktion.
- plot_method{‘contourf’, ‘contour’, ‘pcolormesh’}, Standard=’contourf’
Plotting-Methode, die beim Plotten der Response aufgerufen werden soll. Bitte siehe die folgende Matplotlib-Dokumentation für Details:
contourf,contour,pcolormesh.- response_method{‘auto’, ‘decision_function’, ‘predict_proba’, ‘predict’}, Standard=’auto’
Gibt an, ob decision_function, predict_proba oder predict als Ziel-Response verwendet werden soll. Wenn auf 'auto' gesetzt, wird die Response-Methode in der oben genannten Reihenfolge versucht.
Geändert in Version 1.6: Für Multiklassenprobleme ist 'auto' kein Standard mehr für 'predict'.
- class_of_interestint, float, bool oder str, Standard=None
Die Klasse, die geplottet werden soll, wenn
response_method'predict_proba' oder 'decision_function' ist. Wenn None, wirdestimator.classes_[1]für binäre Klassifikatoren als positive Klasse betrachtet. Für Multiklassen-Klassifikatoren werden, wenn None, alle Klassen in der Entscheidungsgrenze dargestellt; die Klasse mit dem höchsten Response-Wert an jedem Punkt wird geplottet. Die Farbe jeder Klasse kann übermulticlass_colorseingestellt werden.Hinzugefügt in Version 1.4.
- multiclass_colorsListe von str oder str, Standard=None
Gibt an, wie jede Klasse beim Plotten von Multiklassen-'predict_proba' oder 'decision_function' gefärbt werden soll und
class_of_interestNone ist. Wird in allen anderen Fällen ignoriert.Mögliche Eingaben sind
Liste: Liste von Matplotlib Farb-Strings der Länge
n_classesstr: Name einer
matplotlib.colors.Colormap- None: Die Colormap 'tab10' wird verwendet, um Farben abzutasten, wenn die Anzahl der
Klassen kleiner oder gleich 10 ist, andernfalls die Colormap 'gist_rainbow'.
Einfarbige Colormaps werden aus den Farben in der Liste generiert oder Farben aus der Colormap entnommen und dem Parameter
cmapderplot_methodübergeben.Hinzugefügt in Version 1.7.
- xlabelstr, Standard=None
Die für die x-Achse verwendete Beschriftung. Wenn
None, wird versucht, eine Beschriftung ausXzu extrahieren, wenn es sich um einen DataFrame handelt, andernfalls wird ein leerer String verwendet.- ylabelstr, Standard=None
Die für die y-Achse verwendete Beschriftung. Wenn
None, wird versucht, eine Beschriftung ausXzu extrahieren, wenn es sich um einen DataFrame handelt, andernfalls wird ein leerer String verwendet.- axMatplotlib Axes, Standard=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_methodübergeben werden sollen.
- Gibt zurück:
- display
DecisionBoundaryDisplay Objekt, das das Ergebnis speichert.
- display
Siehe auch
DecisionBoundaryDisplayVisualisierung der Entscheidungsgrenze.
sklearn.metrics.ConfusionMatrixDisplay.from_estimatorKonfusionsmatrix basierend auf einem Schätzer, den Daten und dem Label plotten.
sklearn.metrics.ConfusionMatrixDisplay.from_predictionsKonfusionsmatrix basierend auf den wahren und vorhergesagten Labels plotten.
Beispiele
>>> import matplotlib.pyplot as plt >>> from sklearn.datasets import load_iris >>> from sklearn.linear_model import LogisticRegression >>> from sklearn.inspection import DecisionBoundaryDisplay >>> iris = load_iris() >>> X = iris.data[:, :2] >>> classifier = LogisticRegression().fit(X, iris.target) >>> disp = DecisionBoundaryDisplay.from_estimator( ... classifier, X, response_method="predict", ... xlabel=iris.feature_names[0], ylabel=iris.feature_names[1], ... alpha=0.5, ... ) >>> disp.ax_.scatter(X[:, 0], X[:, 1], c=iris.target, edgecolor="k") <...> >>> plt.show()
- plot(plot_method='contourf', ax=None, xlabel=None, ylabel=None, **kwargs)[Quelle]#
Visualisierung plotten.
- Parameter:
- plot_method{‘contourf’, ‘contour’, ‘pcolormesh’}, Standard=’contourf’
Plotting-Methode, die beim Plotten der Response aufgerufen werden soll. Bitte siehe die folgende Matplotlib-Dokumentation für Details:
contourf,contour,pcolormesh.- axMatplotlib Axes, Standard=None
Axes-Objekt, auf dem geplottet werden soll. Wenn
None, wird eine neue Figur und Achse erstellt.- xlabelstr, Standard=None
Überschreibe die x-Achsenbeschriftung.
- ylabelstr, Standard=None
Überschreibe die y-Achsenbeschriftung.
- **kwargsdict
Zusätzliche Schlüsselwortargumente, die an die
plot_methodübergeben werden sollen.
- Gibt zurück:
- display:
DecisionBoundaryDisplay Objekt, das berechnete Werte speichert.
- display:
Galeriebeispiele#
Lineare und Quadratische Diskriminanzanalyse mit Kovarianzellipsoid
Visualisierung der probabilistischen Vorhersagen eines VotingClassifier
Entscheidungsgrenzen von multinomialer und One-vs-Rest Logistischer Regression
One-Class SVM vs. One-Class SVM mittels Stochastic Gradient Descent
Klassen-Likelihood-Verhältnisse zur Messung der Klassifikationsleistung
Vergleich von Nächsten Nachbarn mit und ohne Neighborhood Components Analysis
Entscheidungsgrenze semi-überwachter Klassifikatoren vs. SVM auf dem Iris-Datensatz
Verschiedene SVM-Klassifikatoren im Iris-Datensatz plotten
Klassifikationsgrenzen mit verschiedenen SVM-Kernen plotten
Entscheidungsfläche von Entscheidungsbäumen, trainiert auf dem Iris-Datensatz, plotten