Heim > Backend-Entwicklung > Python-Tutorial > Projekt – Überwachtes Lernen mit Python – Nutzen wir die logistische Regression zur Vorhersage der Wahrscheinlichkeit eines Herzinfarkts

Projekt – Überwachtes Lernen mit Python – Nutzen wir die logistische Regression zur Vorhersage der Wahrscheinlichkeit eines Herzinfarkts

DDD
Freigeben: 2025-01-18 22:14:11
Original
243 Leute haben es durchsucht

Project - Supervised Learning with Python - Lets use Logistic Regression for Predicting the chances of having a Heart Attack

Dieses Tutorial demonstriert ein maschinelles Lernprojekt mit Python und dem LogisticRegression-Algorithmus zur Vorhersage der Wahrscheinlichkeit eines Herzinfarkts. Der von Kaggle stammende Datensatz wird analysiert, um ein Vorhersagemodell zu erstellen.

Schlüsselkonzepte:

  • Logistische Regression
  • StandardScaler (sklearn.preprocessing)
  • fit_transform()
  • train_test_split()
  • model.predict()
  • model.predict_proba()
  • classification_report()
  • roc_auc_score()

Projektziel:

Dieses Projekt zielt darauf ab, die praktische Anwendung der logistischen Regression bei der Vorhersage des Herzinfarktrisikos basierend auf Patientendaten zu veranschaulichen. Wir werden die Fähigkeiten von Python nutzen, um dieses Vorhersagemodell zu erstellen und zu bewerten.

Das Jupyter-Notizbuch und der Datensatz sind hier verfügbar:

Notizbuch: https://www.php.cn/link/aa3f874fb850d8908be9af3a69af4289

Datensatz: https://www.php.cn/link/4223a1d5b9e017dda51515829140e5d2 (Kaggle-Quelle: https://www.php.cn/link/5bb77e5c6d452aee283844d47756dc05)

Zukunftspläne:

Zukünftige Tutorials werden weitere Konzepte des maschinellen Lernens untersuchen und sich dabei auf überwachtes und unüberwachtes Lernen konzentrieren, wie in dieser Kaggle-Roadmap beschrieben: https://www.php.cn/link/4bea9e07f447fd088811cc81697a4d4e [#Machine Learning Engineer Roadmap für 2025]

Zielgruppe:

Dieses Tutorial richtet sich an Python-Enthusiasten, die sich für maschinelles Lernen interessieren, insbesondere für diejenigen, die neu auf diesem Gebiet sind. Es baut auf einem früheren Tutorial zur linearen Regression auf.

Fühlen Sie sich frei, mit dem Notebook zu experimentieren und verschiedene Modelle des maschinellen Lernens zu erkunden!

Schritt-für-Schritt-Anleitung:

Schritt 1: Laden der Daten

<code class="language-python">import pandas as pd

data = pd.read_csv('heart-disease-prediction.csv')
print(data.head())</code>
Nach dem Login kopieren
Nach dem Login kopieren

Dadurch wird der Datensatz mit Pandas geladen.

Schritt 2: Explorative Datenanalyse (EDA)

<code class="language-python">print(data.info())</code>
Nach dem Login kopieren
Nach dem Login kopieren

Dies bietet eine Zusammenfassung der Struktur und Datentypen des Datensatzes.

Schritt 3: Umgang mit fehlenden Daten

<code class="language-python">print(data.isnull().sum())
data.fillna(data.mean(), inplace=True)
print(data.isnull().sum())</code>
Nach dem Login kopieren
Nach dem Login kopieren

Fehlende Werte werden anhand des Mittelwerts jeder Spalte identifiziert und aufgefüllt.

Schritt 4: Datenvorverarbeitung

<code class="language-python">X = data[['age', 'totChol','sysBP','diaBP', 'cigsPerDay','BMI','glucose']]
y = data['TenYearCHD']</code>
Nach dem Login kopieren
Nach dem Login kopieren

Relevante Merkmale (X) und die Zielvariable (y) werden ausgewählt.

Schritt 5: Datennormalisierung

<code class="language-python">from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X = scaler.fit_transform(X)</code>
Nach dem Login kopieren
Nach dem Login kopieren

Daten werden mit StandardScaler normalisiert, um die Modellleistung zu verbessern.

Schritt 6: Datenaufteilung

<code class="language-python">import pandas as pd

data = pd.read_csv('heart-disease-prediction.csv')
print(data.head())</code>
Nach dem Login kopieren
Nach dem Login kopieren

Der Datensatz ist in Trainings- und Testsätze aufgeteilt (80/20-Aufteilung).

Schritt 7: Modellschulung

<code class="language-python">print(data.info())</code>
Nach dem Login kopieren
Nach dem Login kopieren

Anhand der Trainingsdaten wird ein logistisches Regressionsmodell trainiert.

Schritt 8: Modellbewertung

<code class="language-python">print(data.isnull().sum())
data.fillna(data.mean(), inplace=True)
print(data.isnull().sum())</code>
Nach dem Login kopieren
Nach dem Login kopieren

Die Leistung des Modells wird anhand von classification_report und roc_auc_score bewertet.

Schritt 9: Modellvorhersage

<code class="language-python">X = data[['age', 'totChol','sysBP','diaBP', 'cigsPerDay','BMI','glucose']]
y = data['TenYearCHD']</code>
Nach dem Login kopieren
Nach dem Login kopieren

Das trainierte Modell wird verwendet, um das Risiko einer Herzerkrankung für einen neuen Patienten vorherzusagen.

Zusätzliche Patientendaten werden für die weitere Praxis bereitgestellt:

<code class="language-python">from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X = scaler.fit_transform(X)</code>
Nach dem Login kopieren
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonProjekt – Überwachtes Lernen mit Python – Nutzen wir die logistische Regression zur Vorhersage der Wahrscheinlichkeit eines Herzinfarkts. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage