Einführung
In diesem Lab verwenden wir den Logistischen Regressionsklassifizierer, um die ersten beiden Merkmale des Iris-Datensatzes anhand ihrer Labels zu klassifizieren. Wir werden die scikit-learn-Bibliothek verwenden, um den Datensatz zu laden und vorzubereiten, eine Instanz des Logistischen Regressionsklassifizierers zu erstellen und die Daten anzupassen. Schließlich werden wir die Entscheidungsgrenzen auf dem Streudiagramm anzeigen.
VM-Tipps
Nachdem die VM gestartet ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu nutzen.
Manchmal müssen Sie einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund der Einschränkungen in Jupyter Notebook nicht automatisiert werden.
Wenn Sie bei der Lernphase Probleme haben, können Sie Labby gerne fragen. Geben Sie nach der Sitzung Feedback, und wir werden das Problem für Sie prompt beheben.
Den Datensatz laden und vorbereiten
Wir werden die scikit-learn-Bibliothek verwenden, um den Iris-Datensatz zu laden. Der Datensatz enthält 3 Klassen mit jeweils 50 Instanzen, wobei jede Klasse auf eine Art von Iris-Pflanze verweist. Jede Instanz hat 4 Merkmale: Kelchblattlänge, Kelchblattbreite, Blütenblattlänge und Blütenblattbreite.
import matplotlib.pyplot as plt
from sklearn.linear_model import LogisticRegression
from sklearn import datasets
from sklearn.inspection import DecisionBoundaryDisplay
## ladet den Iris-Datensatz
iris = datasets.load_iris()
X = iris.data[:, :2] ## wir nehmen nur die ersten beiden Merkmale.
Y = iris.target
Erstellen einer Instanz des Logistischen Regressionsklassifizierers und Anpassen der Daten
Wir werden eine Instanz des Logistischen Regressionsklassifizierers erstellen und die Daten anpassen.
## Erstellt eine Instanz des Logistischen Regressionsklassifizierers und passt die Daten an.
logreg = LogisticRegression(C=1e5)
logreg.fit(X, Y)
Zeigen Sie die Entscheidungsgrenzen im Streudiagramm an
Wir werden die Entscheidungsgrenzen im Streudiagramm mithilfe von DecisionBoundaryDisplay aus der scikit-learn-Bibliothek anzeigen.
_, ax = plt.subplots(figsize=(4, 3))
DecisionBoundaryDisplay.from_estimator(
logreg,
X,
cmap=plt.cm.Paired,
ax=ax,
response_method="predict",
plot_method="pcolormesh",
shading="auto",
xlabel="Kelchblattlänge",
ylabel="Kelchblattbreite",
eps=0.5,
)
## Zeichnen Sie auch die Trainingspunkte
plt.scatter(X[:, 0], X[:, 1], c=Y, edgecolors="k", cmap=plt.cm.Paired)
plt.xticks(())
plt.yticks(())
plt.show()
Zusammenfassung
In diesem Lab haben wir den Logistischen Regressionsklassifizierer verwendet, um die ersten beiden Merkmale des Iris-Datensatzes anhand ihrer Labels zu klassifizieren. Wir haben den Datensatz mit der scikit-learn-Bibliothek geladen und vorbereitet, eine Instanz des Logistischen Regressionsklassifizierers erstellt und die Daten angepasst. Schließlich haben wir die Entscheidungsgrenzen auf dem Streudiagramm angezeigt.