Problem modelowania dla wyjaśnienia

Modelowanie danych w Tidyverse

Albert Y. Kim

Assistant Professor of Statistical and Data Sciences

Przypomnienie: ogólna formuła modelowania

$$ y = f(\vec{x}) + \epsilon $$

Gdzie:

  • $y$: interesująca zmienna wynikowa
  • $\vec{x}$: zmienne objaśniające/predyktory
  • $f()$: funkcja zależności między $y$ a $\vec{x}$, czyli sygnał
  • $\epsilon$: losowy składnik błędu, czyli szum
Modelowanie danych w Tidyverse

Problem modelowania

Rozważmy $y = f(\vec{x}) + \epsilon$.

  1. $f()$ i $\epsilon$ są nieznane
  2. $n$ obserwacji $y$ i $\vec{x}$ jest znanych/podanych w danych
  3. Cel: dopasowanie modelu $\hat{f}()$, który przybliża $f()$, ignorując $\epsilon$
  4. Cel w skrócie: oddzielenie sygnału od szumu
  5. Możliwe jest wtedy generowanie dopasowanych/przewidywanych wartości $\hat{y} = \hat{f}(\vec{x})$
Modelowanie danych w Tidyverse

Przykład modelowania dla wyjaśnienia

Modelowanie danych w Tidyverse

EDA zależności

library(ggplot2)
library(dplyr)
library(moderndive)

ggplot(evals, aes(x = age, y = score)) +
  geom_point() + 
  labs(x = "age", y = "score",
       title = "Teaching score over age")
Modelowanie danych w Tidyverse

EDA zależności

Modelowanie danych w Tidyverse

Wykres rozproszenia z rozrzutem

library(ggplot2)
library(dplyr)
library(moderndive)

# Use geom_jitter() instead of geom_point()
ggplot(evals, aes(x = age, y = score)) +
  geom_jitter() + 
  labs(x = "age", y = "score",
       title = "Teaching score over age (jittered)")
Modelowanie danych w Tidyverse

Wykres rozproszenia z rozrzutem

Modelowanie danych w Tidyverse

Współczynnik korelacji

Modelowanie danych w Tidyverse

Obliczanie współczynnika korelacji

evals %>% 
  summarize(correlation = cor(score, age))
# A tibble: 1 x 1
  correlation
        <dbl>
1      -0.107
Modelowanie danych w Tidyverse

Czas na ćwiczenia!

Modelowanie danych w Tidyverse

Preparing Video For Download...