Logistisches Regressionsmodell für den Iris-Datensatz

Machine LearningMachine LearningBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

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.