Heim > Artikel > Backend-Entwicklung > Beispiel für einen logistischen Regressionsalgorithmus in Python
Beispiel für einen logistischen Regressionsalgorithmus in Python
Die logistische Regression ist ein häufig verwendeter Klassifizierungsalgorithmus, der in den Bereichen maschinelles Lernen und Datenanalyse weit verbreitet ist. In diesem Artikel wird die Verwendung des logistischen Regressionsalgorithmus für die Klassifizierung in Python vorgestellt. Die spezifischen Implementierungsschritte sind wie folgt:
Schritt 1: Importieren Sie die erforderlichen Python-Bibliotheken
Bevor wir mit der Implementierung des logistischen Regressionsalgorithmus beginnen, müssen wir die importieren notwendige Python-Bibliotheken, zum Beispiel: NumPy und Pandas (zur Datenverarbeitung und -bereinigung), sklearn und matplotlib (zur Modellschulung und -bewertung sowie Datenvisualisierung). Der spezifische Code lautet wie folgt:
import numpy as np import pandas as pd from sklearn.linear_model import LogisticRegression from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score,confusion_matrix import matplotlib.pyplot as plt %matplotlib inline
Schritt 2: Laden Sie den Datensatz
Als nächstes müssen wir den Datensatz laden. Hier nehmen wir den Iris-Datensatz (Iris) als Beispiel. Dieser Datensatz enthält 4 Merkmale von 3 verschiedenen Irisarten (Setosa, Versicolour und Virginica): Kelchblattlänge, Kelchblattbreite, Blütenblattlänge und Blütenblattbreite. Wir können den Datensatz laden, indem wir Pandas verwenden, um die Datendatei im CSV-Format zu lesen. Der spezifische Code lautet wie folgt:
data=pd.read_csv('iris.csv') print(data.head())
Schritt 3: Datenverarbeitung und -trennung
Bevor wir die Daten in das logistische Regressionsmodell eingeben, müssen wir sie verarbeiten und trennen Sie die Daten. Zuerst müssen wir die Label-Spalte im Datensatz als unsere Zielvariable (y) abtrennen, während wir die verbleibenden Feature-Spalten als unsere unabhängigen Variablen (X) verwenden. Zweitens müssen wir die Daten verarbeiten, einschließlich: Verarbeitung fehlender Daten, Verarbeitung von Ausreißern, Konvertierung kategorialer Variablen usw. Hier können wir den Datensatz mithilfe der Funktion train_test_split in der sklearn-Bibliothek zufällig in Trainingsdaten und Testdaten aufteilen. Der spezifische Code lautet wie folgt:
X=data.iloc[:,:-1] y=data.iloc[:,-1] X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.3,random_state=42)
Schritt 4: Modelltraining und -bewertung
Jetzt können wir den logistischen Regressionsalgorithmus verwenden, um die Trainingsdaten anzupassen. Wir können ein logistisches Regressionsobjekt erstellen, indem wir die LogisticRegression-Klasse in der sklearn-Bibliothek verwenden und dann die Fit-Methode verwenden, um die Trainingsdaten anzupassen. Nach Abschluss des Trainings können wir die Vorhersagemethode verwenden, um die Testdaten vorherzusagen, und die Funktionen „accurity_score“ und „confusion_matrix“ in der sklearn-Bibliothek verwenden, um das Modell auszuwerten. Der spezifische Code lautet wie folgt:
lr=LogisticRegression() lr.fit(X_train,y_train) y_pred=lr.predict(X_test) acc=accuracy_score(y_test,y_pred) cm=confusion_matrix(y_test,y_pred) print('Accuracy:', acc) print('Confusion Matrix: ', cm)
Schritt 5: Visualisierung der Ergebnisse
Schließlich können wir die Matplotlib-Bibliothek verwenden, um unsere Ergebnisse zu visualisieren. Beispielsweise können wir Streudiagramme oder Histogramme verwenden, um die Eigenschaften der Daten und die Klassifizierungsgrenzen der logistischen Regression darzustellen. Der spezifische Code lautet wie folgt:
colors=['blue','green','red'] markers=['o','s','^'] labels=['Setosa','Versicolour','Virginica'] for i, target in enumerate(set(data.iloc[:,-1])): plt.scatter(x=data.loc[data.iloc[:,-1]==target,'petal_length'], y=data.loc[data.iloc[:,-1]==target,'petal_width'], c=colors[i], marker=markers[i], label=labels[i]) x=np.linspace(0,8,1000) y=(-lr.coef_[0][0]*x-lr.intercept_)/lr.coef_[0][1] plt.plot(x,y,'k-',label='Decision Boundary') plt.xlabel('Petal Length') plt.ylabel('Petal Width') plt.legend(loc='lower right') plt.show()
Zusammenfassend sind die oben genannten Schritte die grundlegenden Schritte zur Implementierung des logistischen Regressionsalgorithmus in Python, die entsprechend spezifischer Datensätze und Klassifizierungsprobleme angepasst und verbessert werden können. Obwohl der logistische Regressionsalgorithmus einfach und leicht zu verwenden ist, erfordert er auch ein umfassendes Verständnis seiner Prinzipien sowie eine angemessene Datenverarbeitung und Modelloptimierung, um bessere Klassifizierungsergebnisse zu erzielen.
Das obige ist der detaillierte Inhalt vonBeispiel für einen logistischen Regressionsalgorithmus in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!