Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Auswahl der Merkmale | Multiple Lineare Regression
Lineare Regression mit Python

Auswahl der Merkmale

Swipe um das Menü anzuzeigen

Beim Arbeiten mit vielen Merkmalen ist oft unklar, welche relevant sind. Ein Modell kann mit allen Merkmalen trainiert werden, um anschließend zu überprüfen, welche Merkmale keinen Nutzen bringen, und danach das Modell nur mit den aussagekräftigen Merkmalen erneut zu trainieren.

GuteSchlechteMerkmale

Warum Merkmale aus dem Modell entfernen?

Das Hinzufügen eines Merkmals, das keinen Bezug zum Zielwert hat, führt zu Störgeräuschen und verschlechtert die Vorhersagen. Viele nutzlose Merkmale verstärken das Rauschen und verringern die Modellqualität zusätzlich.

Wie erkennt man, ob die Merkmale gut oder schlecht sind?

OLS bietet während des Trainings statistische Tests an. Jedes Merkmal erhält ein t-Test-Ergebnis, das in der summary()-Tabelle angezeigt wird und angibt, ob es einen signifikanten Einfluss auf das Ziel hat.

123456789
import pandas as pd import statsmodels.api as sm file_link='https://codefinity-content-media.s3.eu-west-1.amazonaws.com/b22d1166-efda-45e8-979e-6c3ecfc566fc/heights_two_feature.csv' df = pd.read_csv(file_link) # Open the file X,y = df[['Father', 'Mother']], df['Height'] # Assign the variables X_tilde = sm.add_constant(X) # Create X_tilde regression_model = sm.OLS(y, X_tilde).fit() # Initialize and train an OLS object print(regression_model.summary()) #Get the summary

Von Interesse ist der p-Wert für jedes Merkmal.

p-Werte

Kurz gesagt: Je niedriger der p-Wert, desto höher das Vertrauen, dass das Merkmal einen Einfluss hat.

Beispiel für p-Werte

In der Statistik wird ein Signifikanzniveau festgelegt, üblicherweise 0,05. Überschreitet der p-Wert eines Merkmals diesen Schwellenwert, gilt es als nicht relevant.

In der Praxis können etwas höhere p-Werte (knapp über 0,05) das Modell dennoch unterstützen. Es ist ratsam, das Modell mit und ohne dieses Merkmal zu testen. Bei sehr hohen p-Werten (>0,4) kann das Merkmal jedoch bedenkenlos entfernt werden.

Note
Hinweis

Der p-Wert liegt zwischen 0 und 1. Ein niedriger p-Wert bedeutet weniger als 0,05, während ein hoher p-Wert in der Regel größer als 0,3-0,5 ist.

In unserem Beispiel erhielten wir p-Werte für Mother's height und constant von 0,087 bzw. 0,051. Wenn wir Merkmale mit einem p-Wert > 0,05 entfernen, erhalten wir das untenstehende Ergebnis (links).

Modelle vergleichen

Schon visuell lässt sich erkennen, dass das Modell mit Konstante (rechts) besser ist, daher sollte es nicht aus dem Modell entfernt werden.

Note
Hinweis

Kleine Datensätze führen häufig zu höheren p-Werten (0,05–0,2), selbst bei relevanten Merkmalen. P-Werte spiegeln das Vertrauen wider: Mit mehr Daten wird es einfacher, wirklich einflussreiche Merkmale von zufälligen zu unterscheiden.

Wie entfernt man ungeeignete Merkmale?

Es genügt, die Spalte, die dem Merkmal entspricht, aus X_tilde zu entfernen. Dies kann mit folgendem Code durchgeführt werden:

X_tilde = X_tilde.drop(___, axis=1)

Zum Beispiel, um die Spalten 'const' und 'Mother' zu entfernen, verwendet man:

X_tilde = X_tilde.drop(['Mother', 'const'], axis=1)

Und dann ein neues OLS-Objekt mit dem aktualisierten X_tilde erstellen:

regression_model=sm.OLS(y, X_tilde)

1. Welche der Merkmale sollten BEIBEHALTEN werden?

2. Wähle die FALSCHE Aussage aus.

question mark

Welche der Merkmale sollten BEIBEHALTEN werden?

Wählen Sie alle richtigen Antworten aus

question mark

Wähle die FALSCHE Aussage aus.

Wählen Sie die richtige Antwort aus

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 4

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Abschnitt 2. Kapitel 4
some-alt