Verallgemeinerte lineare Modelle

Methoden II: Methoden der empirischen Kommunikations- und Medienforschung

Marko Bachl

Freie Universität Berlin

30. 06. 2025

Fragen zur Übung?

Agenda

  1. Warum verallgemeinerte lineare Modelle?
  2. Logistische Regression
  3. Ausblick: Regression für Zählvariablen
  4. Übungen

Lernziele

  • Lernziel der Vorlesungssitzung: Überblick über die Logik der Verallgemeinerung des linearen Modells; Vertiefter Einblick in logistische Regression; Kennenlernen einer weiteren Variante (Poisson)
  • Lernziel der Übungsaufgabe: R-Code zur logistischen Regression nachvollziehen, ausführen und bearbeiten können

Warum verallgemeinerte lineare Modelle?

More Linear Regression

More Linear Regression

Warum verallgemeinerte lineare Modelle?

Unsere abhängige Variable ist nicht metrisch und kontinuierlich, z.B.

  • Binäre Variable (0; 1): falsch, richtig: kommt (nicht) vor
  • Zählvariable (count): Anzahl (ganze Zahl ≥ 0)

→ Funktion zwischen Prädiktoren und aV ist nicht unbedingt linear

→ Lineares Modell sagt Werte voraus, die es nicht geben kann

Lineare Regression mit binärer aV

  • Vorhersage, ob eine Person Volksmusik mag, durch Alter (simuliertes Beispiel)
  • Einige vorausgesagte Werte kann es auch als Wahrscheinlichkeit nicht geben, da nur die Werte 0 und 1 empirisch vorkommen.
  • Linearer Zusammenhang ist nicht gegeben, d.h. wir verstoßen gegen eine Annahmen der linearen Regression
  • Manchmal Einsatz als Linear Probability Model (LPM) mit einfacher Interpretation

Lineare Regression mit Zählvariable als aV

  • Vorhersage, wie viele Volksmusikstars eine Person kennt, durch Alter (simuliertes Beispiel)
  • Viele vorausgesagte Werte kann es nicht geben, da nur ganze Zahlen empirisch vorkommen.
  • Linearer Zusammenhang ist nicht gegeben, d.h. wir verstoßen gegen eine Annahmen der linearen Regression
  • Trotzdem häufiger Einsatz als lineares Modell mit einfacher Interpretation, z.B. mit log-Transformation.

Logistische Regression

Logistische Regression

  • aV: binär
  • Logit-Funktion: \(P(Y) = \frac {1}{1+e^{-(\beta_0 + \beta_1 x)}}\)
  • Die Logit-Funktion transformiert alle Werte in einen Bereich von 0-1.
  • Die Werte von 0-1 können als Wahrscheinlichkeiten interpretiert werden.

Lineare vs. logistische Regression

\(Logit(Y) = b_0 + b_1 X_i + \epsilon_i\)

  • Gleiche Annahmen zu Unabhängigkeit der Fälle und Multikollinearität
  • Gleiche Logik der Modellspezifikation mit Nullmodell und Prädiktorvariablen
  • Gleiche Logik der statistischen Inferenz (Standardfehler, Test-Statistik, Konfidenzintervalle)
  • Statistisch unterschiedliche, konzeptionell ähnliche \(R^2\)-Maße
  • Unterschiedliche Interpretation der Koeffizienten

Fragen?

Beispiel: Einzelne Wissensfragen

(Van Erkel & Van Aelst, 2021)

Beispiel: Einzelne Wissensfragen

Descriptive Statistics
Variable Summary
PK1 [correct], % 83.1
PK2 [correct], % 68.7
PK3 [correct], % 40.7
PK4 [correct], % 87.9
PK5 [correct], % 62.8
PK6 [correct], % 24.1

Null-Modell

m0 <- glm(
  PK1 ~ 1, # Null-Modell nur mit Intercept (Konstante)
  family = binomial(link = "logit"), # aV ist binär, logit-Link = Logistische Regression
  data = d
)


Parameter Coefficient 95% CI z p
(Intercept) 1.59 (1.43, 1.76) 18.80 < .001


plogis(1.59) #invers-logit, logit rückgängig machen
[1] 0.8306161
Variable Summary
PK1 [correct], % 83.1

Fragen?

Koeffizienten in logistischer Regression

  • Koeffizienten sind bei logistischer Regression schwer direkt interpretierbar
  • Interpretation als (Änderung von) Wahrscheinlichkeiten ist falsch, u.a. weil diese nicht konstant sind
  • 3 Möglichkeiten, logistische Modelle zu interpretieren:
    • Divide-by-4-Regel
    • Average Marginal Effects
    • Odds-Ratios

Unstandardisierte Koeffizienten

  • Interpretation im logistischen Modell hängt (auch) am Intercept und an den anderen Prädiktoren.
  • Intercept durch Inverse Logit Funktion (in R plogis()) zu Baseline-Wahrscheinlichkeit
  • Die Veränderung der Wahrscheinlichkeiten bei einer Änderung von \(X\) ist nicht in allen Fällen gleich groß.
  • Gelman & Hill (2006): Divide-by-4-Regel für schnelle Interpretation:
    • \(B/4\) ist eine Obergrenze für die Änderung in der Wahrscheinlichkeit \(P(Y=1)\), wenn \(X\) sich um eine Einheit ändert, in Prozentpunkten.
    • Abweichung von dieser Regel am Rande der Verteilung von \(X\) größer als in der Mitte

Modell mit Prädiktoren

d <- d |> 
  mutate(
    Online_news_sites_c = Online_news_sites - mean(Online_news_sites),
    Twitter_c = Twitter - mean(Twitter),
    Facebook_c = Facebook - mean(Facebook),
    Age_c = Age - mean(Age)
  )
m1 <- glm(
  PK1 ~ Online_news_sites_c + Twitter_c + Facebook_c + Gender + Age_c, # Regressionsgleichung
  family = binomial(link = "logit"), # aV ist binär, logit-Link = Logistische Regression
  data = d
)


  • Alle Prädiktoren um ihren Mittelwert zentriert, da wir Intercept / Konstante interpretieren wollen.

Unstandardisierte Koeffizienten: Beispiel

Parameter Coefficient 95% CI z p
(Intercept) 2.33 (2.03, 2.67) 14.28 < .001
Online news sites c 0.42 (0.30, 0.56) 6.45 < .001
Twitter c -0.14 (-0.31, 0.05) -1.45 0.147
Facebook c -0.19 (-0.30, -0.08) -3.53 < .001
Gender (female) -0.64 (-1.03, -0.26) -3.24 0.001
Age c 0.06 (0.04, 0.07) 8.41 < .001
plogis(2.33)
[1] 0.9113313


  • Personen, die auf allen Prädiktoren den Wert 0 haben, beantworten die Frage mit einer Wahrscheinlichkeit von 91% richtig.
  • Vergleichen wir 2 Personen, deren Online-Nachrichten-Nutzung sich um einen Skalenpunkt unterscheidet und die auf den übrigen Prädiktoren dieselben Werte haben. Die Person mit der höheren Nutzung beantwortet die Frage mit einer ca. 10 Prozentpunkte (42/4) größeren Wahrscheinlichkeit richtig.
  • Im Vergleich zu einem Mann beantwortet eine Frau die Frage mit einer um ca. 16 Prozentpunkte (-64/4) geringeren Wahrscheinlichkeit richtig, wenn beide auf den übrigen Prädiktoren dieselben Werte aufweisen.
  • Die durchschnittlichen Unterschiede sind aber geringer, da die Baseline-Wahrscheinlichkeit sehr hoch ist.

Average Marginal Effects

  • Für jeden Wert von \(X\) lässt sich der Anstieg in der Logit-Funktion von \(Y\) berechnen.
  • Wenn wir dies für alle Werte in der Stichprobe tun, und davon den Mittelwert errechnen, erhalten wir den Average Marginal Effect (AME).
  • Dieser lässt sich als durchschnittliche Veränderung in der Wahrscheinlichkeit \(P(Y=1)\) über alle Fälle in Prozentpunkten interpretieren.
  • Mit der R Funktion marginaleffects::avg_comparisons() einfach umzusetzen.

Average Marginal Effects: Beispiel

m1_avgcmp <- avg_comparisons(
  m1, # Modell
  variables = list(Online_news_sites_c = 1, Twitter_c = 1, Facebook_c = 1, Gender = "reference", Age_c = 10), # Variablen und Kontraste
  type = "response") # In welcher Metrik? Hier: Wahrscheinlichkeit
term contrast estimate std.error statistic p.value
Online_news_sites_c mean(+1) 0.04 0.01 7.40 0.00
Twitter_c mean(+1) -0.02 0.01 -1.41 0.16
Facebook_c mean(+1) -0.02 0.01 -3.45 0.00
Gender mean(female) - mean(male) -0.07 0.02 -3.27 0.00
Age_c mean(+10) 0.06 0.01 10.34 0.00


  • Im Durchschnitt führt ein Anstieg der Online-Nachrichtennutzung vom Mittelwert um einen Skalenpunkt zu einer um 4 Prozentpunkte größeren Wahrscheinlichkeit, die Frage richtig zu beantworten.
  • Im Durchschnitt beantworten Frauen die Frage mit einer um ca. 7 Prozentpunkte geringeren Wahrscheinlichkeit richtig als Männer.

Odds Ratios — Exp(B)

  • Häufig wird der Wert Exp(B) berichtet, der auch als Odds Ratio (OR) bezeichnen wird
  • Odds = \(\frac{P(Y=1)}{1-P(Y=1)}\) = “Chance” oder “Risiko”, nicht “Wahrscheinlichkeit”!
  • Exp(B) = 1 bedeutet kein Effekt, Exp(B) > 1 bedeutet eine erhöhte(s) Chance oder Risiko, Exp(B) < 1 eine niedrigere(s) Chance oder Risiko
  • Exp(B) = .5 heißt: Mit jeder Einheit mehr X besteht ein halb so großes Risiko
  • Exp(B) = 2 heißt: Mit jeder Einheit mehr X verdoppelt sich das Risiko

Odds Ratios — Exp(B): Beispiel

Coefficient = Exp(B)
Parameter Coefficient 95% CI z p
(Intercept) 10.33 (7.58, 14.41) 14.28 < .001
Online news sites c 1.53 (1.35, 1.74) 6.45 < .001
Twitter c 0.87 (0.73, 1.05) -1.45 0.147
Facebook c 0.83 (0.74, 0.92) -3.53 < .001
Gender (female) 0.53 (0.36, 0.77) -3.24 0.001
Age c 1.06 (1.04, 1.07) 8.41 < .001
  • Vergleichen wir 2 Personen, deren Online-Nachrichten-Nutzung sich um einen Skalenpunkt unterscheidet und die auf den übrigen Prädiktoren dieselben Werte haben. Die Person mit der höheren Nutzung hat eine ca. 1.5 mal so große Chance, die Frage richtig zu beantworten.
  • Im Vergleich zu einem Mann hat eine Frau eine etwa halb so große Chance, die Frage richtig zu beantworten, wenn beide Personen auf den übrigen Prädiktoren dieselben Werte aufweisen.

Fragen?

Modellgüte: Pseudo \(R^2\)

  • Pseudo \(R^2\) vergleichen Log-Likelihood (Passung) des Null-Modells mit zu beurteilendem Modell.
  • Verbreitet: McFadden, Nagelkerke, Cox & Snell, Tjur (verfügbar im Paket {performance})
  • Empfehlung: Tjur’s \(R^2\)
  • Interpretation wie \(R^2\) in linearer Regression, wobei es je nach Maß und Modell sein kann, dass 0 und/oder 1 nicht erreicht werden können.

Modellgüte: Pseudo \(R^2\): Beispiel

Parameter Coefficient 95% CI z p Fit
(Intercept) 2.33 (2.03, 2.67) 14.28 < .001
Online news sites c 0.42 (0.30, 0.56) 6.45 < .001
Twitter c -0.14 (-0.31, 0.05) -1.45 0.147
Facebook c -0.19 (-0.30, -0.08) -3.53 < .001
Gender (female) -0.64 (-1.03, -0.26) -3.24 0.001
Age c 0.06 (0.04, 0.07) 8.41 < .001
Tjur’s R2 0.18


The model’s explanatory power is moderate (Tjur’s R2 = 0.18)

Fragen?

Ausblick: Regression für Zählvariablen

Ausblick: Regression für Zählvariablen

  • Zählvariablen sind diskret und nicht-negativ. Wachstum häufig in Raten (Logarithmus).
  • Beides wird von linearer Regression nicht erfüllt.
  • Alternativen:
    • Poisson-Regression: aV ist Zählvariable mit M = Var
    • Negativ-binomiale Regression: aV ist Zählvariable mit M \(\neq\) Var.

Regression für Zählvariablen: Beispiel

Politisches Wissen = Zahl der richtig beantworteten Fragen (0-5)

pm1 <- glm(
  Political_knowledge ~ Online_news_sites_c + Twitter_c + Facebook_c + Gender + Age_c, # Regressionsgleichung
  family = poisson(link = "log"), # aV ist Poisson-verteilt, log-Link
  data = d
)

Regression für Zählvariablen: Beispiel

Parameter Coefficient 95% CI z df p Fit
(Intercept) 3.28 (3.13, 3.45) 47.97 Inf < .001
Online news sites c 1.07 (1.05, 1.09) 5.93 Inf < .001
Twitter c 0.98 (0.94, 1.02) -0.95 Inf 0.342
Facebook c 0.98 (0.96, 1.00) -2.20 Inf 0.028
Gender (female) 0.81 (0.76, 0.88) -5.35 Inf < .001
Age c 1.01 (1.01, 1.01) 5.80 Inf < .001
R2_Nagelkerke 0.23
  • Vergleichen wir 2 Personen, deren Online-Nachrichten-Nutzung sich um einen Skalenpunkt unterscheidet und die sich auf den übrigen Prädiktoren dieselben Werte haben. Die Person mit der höheren Nutzung beantwortet 7% mehr Fragen richtig.
  • Im Vergleich zu einem Mann beantwortet eine Frau 19% weniger Fragen richtig, wenn beide Personen auf den übrigen Prädiktoren dieselben Werte aufweisen.

Regression für Zählvariablen: Beispiel

Marginal average effects für Differenz der Zahl richtiger Antworten

pm1_avgcmp <- avg_comparisons(
  pm1, # Modell
  variables = list(Online_news_sites_c = 1, Twitter_c = 1, Facebook_c = 1, Gender = "reference", Age_c = 10), # Variablen und Kontraste
  type = "response") # In welcher Metrik? Hier: Anzahl
term contrast estimate std.error statistic p.value
Online_news_sites_c mean(+1) 0.21 0.04 5.71 0.00
Twitter_c mean(+1) -0.06 0.06 -0.96 0.34
Facebook_c mean(+1) -0.07 0.03 -2.23 0.03
Gender mean(female) - mean(male) -0.62 0.11 -5.40 0.00
Age_c mean(+10) 0.27 0.05 5.54 0.00


  • Im Durchschnitt führt ein Anstieg der Online-Nachrichtennutzung vom Mittelwert um einen Skalenpunkt zu 0.21 mehr richtig beantworteten Fragen.
  • Im Durchschnitt beantworten Frauen 0.62 weniger Fragen richtig als Männer.

Fragen?

Fazit

  • Die lineare Regression kann verallgemeinert werden, um Verteilung der aV und andere Link-Funktionen zwischen Prädiktoren und aV zu ermöglichen.
  • Abwägung: Komplexere Modelle mit weniger intuitiver Interpretation der Koeffizienten als Preis für bessere Annäherung an datengenerierenden Prozess. Oder: Wann ist die lineare Regression gut genug, wann nicht?
  • Vieles, was wir für die lineare Regression gelernt haben, lässt sich auf verallgemeinerte lineare Modelle übertragen: Kausale Annahmen, Moderation & Interaktion, Mediation, Pfadmodelle, Strukturgleichungsmodelle, Mehrebenenmodelle.

Übungsaufgaben

Übungsaufgaben

  1. Reproduzieren Sie die logistische Regression aus der Vorlesung. Interpretieren Sie die Ergebnisse.

  2. Schätzen Sie Modelle für andere Wissensfragen. Passen Sie die Modelle nach Ihren Interessen an. Interpretieren Sie die Ergebnisse.

  • Stellen Sie Ihre Fragen (egal ob technisch oder statistisch) im Blackboard-Forum.

Übungsaufgaben: Technische Anleitung

[Beschreibung für R und RStudio auf eigenem Computer oder Pool-Computer]

  1. Laden Sie die Dateien 10_mame.R (und, falls nicht mehr vorhanden, Vanerkel_Vanaelst_2021.dta) aus Blackboard herunter. Speichern Sie die Datei 10_mame.R in Ihren Arbeitsordner für die Vorlesung (in denselben Ordner, in dem die .R-Dateien aus den letzten Übungen liegen). Speichern Sie Vanerkel_Vanaelst_2021.dta in den Unterordner Daten (falls die Datei dort nicht mehr vorhanden ist).
  2. Öffnen Sie das Projekt uebung.Rproj.
  3. Öffnen Sie innerhalb des Projekts die Datei 10_mame.R.

Übungsaufgaben: Technische Anleitung

[Beschreibung für WebR]

  1. Laden Sie die Dateien 10_mame.R (und, falls nicht mehr vorhanden, Vanerkel_Vanaelst_2021.dta) aus Blackboard herunter.
  2. Laden Sie die Dateien 10_mame.R und Vanerkel_Vanaelst_2021.dta in den Ordner home/web_user hoch.
  3. Öffnen Sie die Datei 10_mame.R.
  4. Ändern Sie den Befehl zum Laden der Datei: Löschen Sie daten/.

Übungsaufgaben: Technische Anleitung

[Beschreibung für Posit.Cloud]

  1. Laden Sie die Dateien 10_mame.R (und, falls nicht mehr vorhanden, Vanerkel_Vanaelst_2021.dta) aus Blackboard herunter.
  2. Öffnen Sie das RStudio-Projekt, das Sie zur ersten Übung erstellt haben, in Posit-Cloud.
  3. Laden Sie die Datei 10_mame.R in den Ordner uebung hoch. Laden Sie die Datei Vanerkel_Vanaelst_2021.dta in den Unterordner daten hoch.
  4. Öffnen Sie das Projekt uebung.Rproj und innerhalb des Projekts die Datei 10_mame.R.
  5. Ändern Sie den Befehl zum Laden der Datei: Fügen Sie uebung/ vor daten/ ein.

Fragen?

Nächste Woche

Qualitative Methods I

Danke — bis zur nächsten Sitzung.

Marko Bachl

Literatur

Gelman, A., & Hill, J. (2006). Data analysis using regression and multilevel/hierarchical models. Cambridge University Press.
Van Erkel, P. F. A., & Van Aelst, P. (2021). Why don’t we learn from social media? Studying effects of and mechanisms behind social media news use on general surveillance political knowledge. Political Communication, 38(4), 407–425. https://doi.org/ghk94s